From 2a9f43eafa2e4a119d4d125ddf6243a127dc3033 Mon Sep 17 00:00:00 2001 From: Nicolas Brassard Date: Thu, 31 Oct 2013 13:49:20 -0400 Subject: [PATCH 01/58] Deprecation notice --- README.markdown | 2 ++ 1 file changed, 2 insertions(+) diff --git a/README.markdown b/README.markdown index c3f71a0..76e4da5 100644 --- a/README.markdown +++ b/README.markdown @@ -2,6 +2,8 @@ A [jQuery][jquery_site] based plug-in for filtering large data sets with user input +### This repro is no longer maintained. See for a up-to-date version. + ## Examples * From 4b02cfd03622af84514b613222ef7c49288e99f7 Mon Sep 17 00:00:00 2001 From: Justin Stolle Date: Sun, 26 May 2013 04:16:39 -0600 Subject: [PATCH 02/58] Provide accent-insensitive comparison MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Added a function to remove diacritics and use it to replace accented characters with their unmarked equivalents in both the search string and the comparison text. In addition to normal behavior, one can now find "México" by searching "Mexico" and vice versa. --- jquery.quicksearch.js | 99 ++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 97 insertions(+), 2 deletions(-) diff --git a/jquery.quicksearch.js b/jquery.quicksearch.js index 543d828..9f75c93 100644 --- a/jquery.quicksearch.js +++ b/jquery.quicksearch.js @@ -1,6 +1,101 @@ (function($, window, document, undefined) { $.fn.quicksearch = function (target, opt) { + var defaultDiacriticsRemovalMap = [ + {'base':'A', 'letters':/[\u0041\u24B6\uFF21\u00C0\u00C1\u00C2\u1EA6\u1EA4\u1EAA\u1EA8\u00C3\u0100\u0102\u1EB0\u1EAE\u1EB4\u1EB2\u0226\u01E0\u00C4\u01DE\u1EA2\u00C5\u01FA\u01CD\u0200\u0202\u1EA0\u1EAC\u1EB6\u1E00\u0104\u023A\u2C6F]/g}, + {'base':'AA','letters':/[\uA732]/g}, + {'base':'AE','letters':/[\u00C6\u01FC\u01E2]/g}, + {'base':'AO','letters':/[\uA734]/g}, + {'base':'AU','letters':/[\uA736]/g}, + {'base':'AV','letters':/[\uA738\uA73A]/g}, + {'base':'AY','letters':/[\uA73C]/g}, + {'base':'B', 'letters':/[\u0042\u24B7\uFF22\u1E02\u1E04\u1E06\u0243\u0182\u0181]/g}, + {'base':'C', 'letters':/[\u0043\u24B8\uFF23\u0106\u0108\u010A\u010C\u00C7\u1E08\u0187\u023B\uA73E]/g}, + {'base':'D', 'letters':/[\u0044\u24B9\uFF24\u1E0A\u010E\u1E0C\u1E10\u1E12\u1E0E\u0110\u018B\u018A\u0189\uA779]/g}, + {'base':'DZ','letters':/[\u01F1\u01C4]/g}, + {'base':'Dz','letters':/[\u01F2\u01C5]/g}, + {'base':'E', 'letters':/[\u0045\u24BA\uFF25\u00C8\u00C9\u00CA\u1EC0\u1EBE\u1EC4\u1EC2\u1EBC\u0112\u1E14\u1E16\u0114\u0116\u00CB\u1EBA\u011A\u0204\u0206\u1EB8\u1EC6\u0228\u1E1C\u0118\u1E18\u1E1A\u0190\u018E]/g}, + {'base':'F', 'letters':/[\u0046\u24BB\uFF26\u1E1E\u0191\uA77B]/g}, + {'base':'G', 'letters':/[\u0047\u24BC\uFF27\u01F4\u011C\u1E20\u011E\u0120\u01E6\u0122\u01E4\u0193\uA7A0\uA77D\uA77E]/g}, + {'base':'H', 'letters':/[\u0048\u24BD\uFF28\u0124\u1E22\u1E26\u021E\u1E24\u1E28\u1E2A\u0126\u2C67\u2C75\uA78D]/g}, + {'base':'I', 'letters':/[\u0049\u24BE\uFF29\u00CC\u00CD\u00CE\u0128\u012A\u012C\u0130\u00CF\u1E2E\u1EC8\u01CF\u0208\u020A\u1ECA\u012E\u1E2C\u0197]/g}, + {'base':'J', 'letters':/[\u004A\u24BF\uFF2A\u0134\u0248]/g}, + {'base':'K', 'letters':/[\u004B\u24C0\uFF2B\u1E30\u01E8\u1E32\u0136\u1E34\u0198\u2C69\uA740\uA742\uA744\uA7A2]/g}, + {'base':'L', 'letters':/[\u004C\u24C1\uFF2C\u013F\u0139\u013D\u1E36\u1E38\u013B\u1E3C\u1E3A\u0141\u023D\u2C62\u2C60\uA748\uA746\uA780]/g}, + {'base':'LJ','letters':/[\u01C7]/g}, + {'base':'Lj','letters':/[\u01C8]/g}, + {'base':'M', 'letters':/[\u004D\u24C2\uFF2D\u1E3E\u1E40\u1E42\u2C6E\u019C]/g}, + {'base':'N', 'letters':/[\u004E\u24C3\uFF2E\u01F8\u0143\u00D1\u1E44\u0147\u1E46\u0145\u1E4A\u1E48\u0220\u019D\uA790\uA7A4]/g}, + {'base':'NJ','letters':/[\u01CA]/g}, + {'base':'Nj','letters':/[\u01CB]/g}, + {'base':'O', 'letters':/[\u004F\u24C4\uFF2F\u00D2\u00D3\u00D4\u1ED2\u1ED0\u1ED6\u1ED4\u00D5\u1E4C\u022C\u1E4E\u014C\u1E50\u1E52\u014E\u022E\u0230\u00D6\u022A\u1ECE\u0150\u01D1\u020C\u020E\u01A0\u1EDC\u1EDA\u1EE0\u1EDE\u1EE2\u1ECC\u1ED8\u01EA\u01EC\u00D8\u01FE\u0186\u019F\uA74A\uA74C]/g}, + {'base':'OI','letters':/[\u01A2]/g}, + {'base':'OO','letters':/[\uA74E]/g}, + {'base':'OU','letters':/[\u0222]/g}, + {'base':'P', 'letters':/[\u0050\u24C5\uFF30\u1E54\u1E56\u01A4\u2C63\uA750\uA752\uA754]/g}, + {'base':'Q', 'letters':/[\u0051\u24C6\uFF31\uA756\uA758\u024A]/g}, + {'base':'R', 'letters':/[\u0052\u24C7\uFF32\u0154\u1E58\u0158\u0210\u0212\u1E5A\u1E5C\u0156\u1E5E\u024C\u2C64\uA75A\uA7A6\uA782]/g}, + {'base':'S', 'letters':/[\u0053\u24C8\uFF33\u1E9E\u015A\u1E64\u015C\u1E60\u0160\u1E66\u1E62\u1E68\u0218\u015E\u2C7E\uA7A8\uA784]/g}, + {'base':'T', 'letters':/[\u0054\u24C9\uFF34\u1E6A\u0164\u1E6C\u021A\u0162\u1E70\u1E6E\u0166\u01AC\u01AE\u023E\uA786]/g}, + {'base':'TZ','letters':/[\uA728]/g}, + {'base':'U', 'letters':/[\u0055\u24CA\uFF35\u00D9\u00DA\u00DB\u0168\u1E78\u016A\u1E7A\u016C\u00DC\u01DB\u01D7\u01D5\u01D9\u1EE6\u016E\u0170\u01D3\u0214\u0216\u01AF\u1EEA\u1EE8\u1EEE\u1EEC\u1EF0\u1EE4\u1E72\u0172\u1E76\u1E74\u0244]/g}, + {'base':'V', 'letters':/[\u0056\u24CB\uFF36\u1E7C\u1E7E\u01B2\uA75E\u0245]/g}, + {'base':'VY','letters':/[\uA760]/g}, + {'base':'W', 'letters':/[\u0057\u24CC\uFF37\u1E80\u1E82\u0174\u1E86\u1E84\u1E88\u2C72]/g}, + {'base':'X', 'letters':/[\u0058\u24CD\uFF38\u1E8A\u1E8C]/g}, + {'base':'Y', 'letters':/[\u0059\u24CE\uFF39\u1EF2\u00DD\u0176\u1EF8\u0232\u1E8E\u0178\u1EF6\u1EF4\u01B3\u024E\u1EFE]/g}, + {'base':'Z', 'letters':/[\u005A\u24CF\uFF3A\u0179\u1E90\u017B\u017D\u1E92\u1E94\u01B5\u0224\u2C7F\u2C6B\uA762]/g}, + {'base':'a', 'letters':/[\u0061\u24D0\uFF41\u1E9A\u00E0\u00E1\u00E2\u1EA7\u1EA5\u1EAB\u1EA9\u00E3\u0101\u0103\u1EB1\u1EAF\u1EB5\u1EB3\u0227\u01E1\u00E4\u01DF\u1EA3\u00E5\u01FB\u01CE\u0201\u0203\u1EA1\u1EAD\u1EB7\u1E01\u0105\u2C65\u0250]/g}, + {'base':'aa','letters':/[\uA733]/g}, + {'base':'ae','letters':/[\u00E6\u01FD\u01E3]/g}, + {'base':'ao','letters':/[\uA735]/g}, + {'base':'au','letters':/[\uA737]/g}, + {'base':'av','letters':/[\uA739\uA73B]/g}, + {'base':'ay','letters':/[\uA73D]/g}, + {'base':'b', 'letters':/[\u0062\u24D1\uFF42\u1E03\u1E05\u1E07\u0180\u0183\u0253]/g}, + {'base':'c', 'letters':/[\u0063\u24D2\uFF43\u0107\u0109\u010B\u010D\u00E7\u1E09\u0188\u023C\uA73F\u2184]/g}, + {'base':'d', 'letters':/[\u0064\u24D3\uFF44\u1E0B\u010F\u1E0D\u1E11\u1E13\u1E0F\u0111\u018C\u0256\u0257\uA77A]/g}, + {'base':'dz','letters':/[\u01F3\u01C6]/g}, + {'base':'e', 'letters':/[\u0065\u24D4\uFF45\u00E8\u00E9\u00EA\u1EC1\u1EBF\u1EC5\u1EC3\u1EBD\u0113\u1E15\u1E17\u0115\u0117\u00EB\u1EBB\u011B\u0205\u0207\u1EB9\u1EC7\u0229\u1E1D\u0119\u1E19\u1E1B\u0247\u025B\u01DD]/g}, + {'base':'f', 'letters':/[\u0066\u24D5\uFF46\u1E1F\u0192\uA77C]/g}, + {'base':'g', 'letters':/[\u0067\u24D6\uFF47\u01F5\u011D\u1E21\u011F\u0121\u01E7\u0123\u01E5\u0260\uA7A1\u1D79\uA77F]/g}, + {'base':'h', 'letters':/[\u0068\u24D7\uFF48\u0125\u1E23\u1E27\u021F\u1E25\u1E29\u1E2B\u1E96\u0127\u2C68\u2C76\u0265]/g}, + {'base':'hv','letters':/[\u0195]/g}, + {'base':'i', 'letters':/[\u0069\u24D8\uFF49\u00EC\u00ED\u00EE\u0129\u012B\u012D\u00EF\u1E2F\u1EC9\u01D0\u0209\u020B\u1ECB\u012F\u1E2D\u0268\u0131]/g}, + {'base':'j', 'letters':/[\u006A\u24D9\uFF4A\u0135\u01F0\u0249]/g}, + {'base':'k', 'letters':/[\u006B\u24DA\uFF4B\u1E31\u01E9\u1E33\u0137\u1E35\u0199\u2C6A\uA741\uA743\uA745\uA7A3]/g}, + {'base':'l', 'letters':/[\u006C\u24DB\uFF4C\u0140\u013A\u013E\u1E37\u1E39\u013C\u1E3D\u1E3B\u017F\u0142\u019A\u026B\u2C61\uA749\uA781\uA747]/g}, + {'base':'lj','letters':/[\u01C9]/g}, + {'base':'m', 'letters':/[\u006D\u24DC\uFF4D\u1E3F\u1E41\u1E43\u0271\u026F]/g}, + {'base':'n', 'letters':/[\u006E\u24DD\uFF4E\u01F9\u0144\u00F1\u1E45\u0148\u1E47\u0146\u1E4B\u1E49\u019E\u0272\u0149\uA791\uA7A5]/g}, + {'base':'nj','letters':/[\u01CC]/g}, + {'base':'o', 'letters':/[\u006F\u24DE\uFF4F\u00F2\u00F3\u00F4\u1ED3\u1ED1\u1ED7\u1ED5\u00F5\u1E4D\u022D\u1E4F\u014D\u1E51\u1E53\u014F\u022F\u0231\u00F6\u022B\u1ECF\u0151\u01D2\u020D\u020F\u01A1\u1EDD\u1EDB\u1EE1\u1EDF\u1EE3\u1ECD\u1ED9\u01EB\u01ED\u00F8\u01FF\u0254\uA74B\uA74D\u0275]/g}, + {'base':'oi','letters':/[\u01A3]/g}, + {'base':'ou','letters':/[\u0223]/g}, + {'base':'oo','letters':/[\uA74F]/g}, + {'base':'p','letters':/[\u0070\u24DF\uFF50\u1E55\u1E57\u01A5\u1D7D\uA751\uA753\uA755]/g}, + {'base':'q','letters':/[\u0071\u24E0\uFF51\u024B\uA757\uA759]/g}, + {'base':'r','letters':/[\u0072\u24E1\uFF52\u0155\u1E59\u0159\u0211\u0213\u1E5B\u1E5D\u0157\u1E5F\u024D\u027D\uA75B\uA7A7\uA783]/g}, + {'base':'s','letters':/[\u0073\u24E2\uFF53\u00DF\u015B\u1E65\u015D\u1E61\u0161\u1E67\u1E63\u1E69\u0219\u015F\u023F\uA7A9\uA785\u1E9B]/g}, + {'base':'t','letters':/[\u0074\u24E3\uFF54\u1E6B\u1E97\u0165\u1E6D\u021B\u0163\u1E71\u1E6F\u0167\u01AD\u0288\u2C66\uA787]/g}, + {'base':'tz','letters':/[\uA729]/g}, + {'base':'u','letters':/[\u0075\u24E4\uFF55\u00F9\u00FA\u00FB\u0169\u1E79\u016B\u1E7B\u016D\u00FC\u01DC\u01D8\u01D6\u01DA\u1EE7\u016F\u0171\u01D4\u0215\u0217\u01B0\u1EEB\u1EE9\u1EEF\u1EED\u1EF1\u1EE5\u1E73\u0173\u1E77\u1E75\u0289]/g}, + {'base':'v','letters':/[\u0076\u24E5\uFF56\u1E7D\u1E7F\u028B\uA75F\u028C]/g}, + {'base':'vy','letters':/[\uA761]/g}, + {'base':'w','letters':/[\u0077\u24E6\uFF57\u1E81\u1E83\u0175\u1E87\u1E85\u1E98\u1E89\u2C73]/g}, + {'base':'x','letters':/[\u0078\u24E7\uFF58\u1E8B\u1E8D]/g}, + {'base':'y','letters':/[\u0079\u24E8\uFF59\u1EF3\u00FD\u0177\u1EF9\u0233\u1E8F\u00FF\u1EF7\u1E99\u1EF5\u01B4\u024F\u1EFF]/g}, + {'base':'z','letters':/[\u007A\u24E9\uFF5A\u017A\u1E91\u017C\u017E\u1E93\u1E95\u01B6\u0225\u0240\u2C6C\uA763]/g} + ]; + + this.removeDiacritics = function(str) { + var changes = defaultDiacriticsRemovalMap; + for(var i=0; i Date: Fri, 5 Apr 2013 11:52:21 -0400 Subject: [PATCH 03/58] Made noResults option accept jQuery DOM elements in addition to string identifiers. Corrected format for README --- README.markdown | 26 +++++++++++++------------- jquery.quicksearch.js | 35 ++++++++++++++++++++++++----------- 2 files changed, 37 insertions(+), 24 deletions(-) diff --git a/README.markdown b/README.markdown index c3f71a0..505ddf9 100644 --- a/README.markdown +++ b/README.markdown @@ -63,29 +63,29 @@ the form and input are not build by the script any more. ## Options -* #### delay +* **delay** Delay of trigger in milliseconds -* #### selector +* **selector** A query selector on sibling elements to test -* #### stripeRows +* **stripeRows** An array of class names to go on each row -* #### loader +* **loader** A query selector to find a loading element -* #### noResults +* **noResults** A query selector to show if there's no results for the search -* #### bind +* **bind** Event that the trigger is tied to -* #### onBefore +* **onBefore** Function to call before trigger is called -* #### onAfter +* **onAfter** Function to call after trigger is called -* #### show +* **show** Function that will add styles to matched elements -* #### hide +* **hide** Function that will add styles to unmatched elements -* #### prepareQuery +* **prepareQuery** Function that transforms text from input_selector into query used by 'testQuery' function -* #### testQuery +* **testQuery** Function that tells if a given item should be hidden It takes 3 arguments: - query prepared by 'prepareQuery' @@ -156,4 +156,4 @@ Thanks to [Seth F.][thelizardreborn] for fixes and [Krzysiek Goj][goj] for the [github_follow]: http://github.com/users/follow?target=riklomas [twitter_follow]: http://twitter.com/riklomas [thelizardreborn]: http://github.com/thelizardreborn -[goj]: http://github.com/goj \ No newline at end of file +[goj]: http://github.com/goj diff --git a/jquery.quicksearch.js b/jquery.quicksearch.js index 9f75c93..d4046df 100644 --- a/jquery.quicksearch.js +++ b/jquery.quicksearch.js @@ -157,7 +157,6 @@ this.matchedResultsCount = numMatchedRows; this.loader(false); options.onAfter(); - return this; }; @@ -199,13 +198,22 @@ }; this.results = function (bool) { - if (typeof options.noResults === "string" && options.noResults !== "") { + + if (options.noResults) { + + var noResultsEl = options.noResults; + + if (typeof options.noResults === "string") { + noResultsEl = $(options.noResults); + } + if (bool) { - $(options.noResults).hide(); + noResultsEl.hide(); } else { - $(options.noResults).show(); + noResultsEl.show(); } } + return this; }; @@ -216,15 +224,16 @@ return this; }; - this.cache = function () { + this.cache = function (doRedraw) { - jq_results = $(target); + doRedraw = (typeof doRedraw === "undefined") ? true : doRedraw; - if (typeof options.noResults === "string" && options.noResults !== "") { - jq_results = jq_results.not(options.noResults); - } + jq_results = options.noResults ? $(target).not(options.noResults) : $(target); - var t = (typeof options.selector === "string") ? jq_results.find(options.selector) : $(target).not(options.noResults); + var t = (typeof options.selector === "string") + ? jq_results.find(options.selector) + : $(target).not(options.noResults); + cache = t.map(function () { return e.removeDiacritics(e.strip_html(this.innerHTML)); }); @@ -239,7 +248,11 @@ * */ val = val || this.val() || ""; - return this.go(); + if (doRedraw) { + this.go(); + } + + return this; }; this.trigger = function () { From 2a1306f45098a27c23ab6c1543c204dbaf507317 Mon Sep 17 00:00:00 2001 From: Rajib Ahmed Date: Thu, 3 Oct 2013 14:18:22 +0200 Subject: [PATCH 04/58] Add bower support --- bower.json | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) create mode 100644 bower.json diff --git a/bower.json b/bower.json new file mode 100644 index 0000000..741151f --- /dev/null +++ b/bower.json @@ -0,0 +1,22 @@ +{ + "name": "quicksearch", + "version": "0.0.0", + "homepage": "https://github.com/rajibahmed/quicksearch", + "authors": [ + "riklomas" + ], + "description": "A jQuery plugin for searching through tables, lists, etc quickly.", + "main": "jquery.quicksearch.js", + "keywords": [ + "search", + "filters" + ], + "license": "MIT", + "ignore": [ + "**/.*", + "node_modules", + "bower_components", + "test", + "tests" + ] +} From eaa00f4b56615f0f2cce38acb78fe87ecf974838 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Uli=20K=C3=B6hler?= Date: Mon, 25 Feb 2013 22:14:29 +0100 Subject: [PATCH 05/58] Add markdown syntax highlighting to README.md --- README.markdown | 147 ++++++++++++++++++++++++------------------------ 1 file changed, 74 insertions(+), 73 deletions(-) diff --git a/README.markdown b/README.markdown index 505ddf9..bd1c847 100644 --- a/README.markdown +++ b/README.markdown @@ -11,56 +11,57 @@ A [jQuery][jquery_site] based plug-in for filtering large data sets with user in Note that the usage has changed in the latest version of quicksearch, the code is *not* backwards compatible, the form and input are not build by the script any more. - - $(input_selector).quicksearch(elements_to_search, options); - +```js +$(input_selector).quicksearch(elements_to_search, options); +``` #### Example on table rows - - /* Example form */ -
- -
- - /* Example table */ - - - - - - - -
Test cellAnother test cell
- - - - +```html +/* Example form */ +
+ +
+ +/* Example table */ + + + + + + + +
Test cellAnother test cell
+ + + + +``` #### Example on the `` elements on a table row - - $('input#search').quicksearch('table tbody tr', { - selector: 'th' - }); - +```js +$('input#search').quicksearch('table tbody tr', { + selector: 'th' +}); +```js #### Example of how to use with JS - - var qs = $('input#id_search_list').quicksearch('ul#list_example li'); - $('ul#list_example').append('
  • Loaded with Ajax
  • '); - qs.cache(); - +```js +var qs = $('input#id_search_list').quicksearch('ul#list_example li'); +$('ul#list_example').append('
  • Loaded with Ajax
  • '); +qs.cache(); +``` #### Example of how to use with Ajax - - var qs = $('input#search').quicksearch('table tbody tr'); - $.ajax({ - 'type': 'GET', - 'url': 'index.html', - 'success': function (data) { - $('table tbody tr').append(data); - qs.cache(); - } - }); - +```js +var qs = $('input#search').quicksearch('table tbody tr'); +$.ajax({ + 'type': 'GET', + 'url': 'index.html', + 'success': function (data) { + $('table tbody tr').append(data); + qs.cache(); + } +}); +``` ## Options * **delay** @@ -94,34 +95,34 @@ the form and input are not build by the script any more. For example: - - $('input#search').quicksearch('table tbody tr', { - 'delay': 100, - 'selector': 'th', - 'stripeRows': ['odd', 'even'], - 'loader': 'span.loading', - 'noResults': 'tr#noresults', - 'bind': 'keyup keydown', - 'onBefore': function () { - console.log('on before'); - }, - 'onAfter': function () { - console.log('on after'); - }, - 'show': function () { - $(this).addClass('show'); - }, - 'hide': function () { - $(this).removeClass('show'); - } - 'prepareQuery': function (val) { - return new RegExp(val, "i"); - }, - 'testQuery': function (query, txt, _row) { - return query.test(txt); - } - }); - +```js +$('input#search').quicksearch('table tbody tr', { + 'delay': 100, + 'selector': 'th', + 'stripeRows': ['odd', 'even'], + 'loader': 'span.loading', + 'noResults': 'tr#noresults', + 'bind': 'keyup keydown', + 'onBefore': function () { + console.log('on before'); + }, + 'onAfter': function () { + console.log('on after'); + }, + 'show': function () { + $(this).addClass('show'); + }, + 'hide': function () { + $(this).removeClass('show'); + } + 'prepareQuery': function (val) { + return new RegExp(val, "i"); + }, + 'testQuery': function (query, txt, _row) { + return query.test(txt); + } +}); +``` ## Help make quicksearch better! If you have a bug fix, the best way to help would be to: From 7cc88a9d65922ea5429162911d2e7e58fe61db30 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Uli=20K=C3=B6hler?= Date: Mon, 25 Feb 2013 22:14:51 +0100 Subject: [PATCH 06/58] Fixed codeblock error in README.md --- README.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.markdown b/README.markdown index bd1c847..9e70e7b 100644 --- a/README.markdown +++ b/README.markdown @@ -43,7 +43,7 @@ $(input_selector).quicksearch(elements_to_search, options); $('input#search').quicksearch('table tbody tr', { selector: 'th' }); -```js +``` #### Example of how to use with JS ```js var qs = $('input#id_search_list').quicksearch('ul#list_example li'); From 2106e4768c57812829b337facc97bc78a17faf40 Mon Sep 17 00:00:00 2001 From: Nicolas Brassard Date: Thu, 31 Oct 2013 12:44:06 -0400 Subject: [PATCH 07/58] Move some files --- README.markdown => README.md | 0 jquery.quicksearch.js => src/jquery.quicksearch.js | 0 2 files changed, 0 insertions(+), 0 deletions(-) rename README.markdown => README.md (100%) rename jquery.quicksearch.js => src/jquery.quicksearch.js (100%) diff --git a/README.markdown b/README.md similarity index 100% rename from README.markdown rename to README.md diff --git a/jquery.quicksearch.js b/src/jquery.quicksearch.js similarity index 100% rename from jquery.quicksearch.js rename to src/jquery.quicksearch.js From bf3962831d415dc82a2f85540274efce1a869732 Mon Sep 17 00:00:00 2001 From: Nicolas Brassard Date: Thu, 31 Oct 2013 12:45:52 -0400 Subject: [PATCH 08/58] Maintenance note --- README.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/README.md b/README.md index 9e70e7b..1faaa61 100644 --- a/README.md +++ b/README.md @@ -2,6 +2,9 @@ A [jQuery][jquery_site] based plug-in for filtering large data sets with user input +This is an improved fork of the original work of riklomas . +This plugin is now maintained by [@DeuxHuitHuit](http://deuxhuithuit.com) + ## Examples * From 3f98fca682f4884abcde99cf5928e02b84449375 Mon Sep 17 00:00:00 2001 From: Nicolas Brassard Date: Thu, 31 Oct 2013 13:10:03 -0400 Subject: [PATCH 09/58] Added grunt a build script --- .gitignore | 4 + Gruntfile.js | 113 +++++++++++++++++++++ LICENSE | 27 +++++ README.md | 2 + dist/jquery.quicksearch.js | 158 +++++++++++++++++++++++++++++ dist/jquery.quicksearch.min.js | 5 + dist/jquery.quicksearch.min.js.map | 1 + jquery.quicksearch.jquery.json | 31 ++++++ package.json | 42 ++++++++ src/jquery.quicksearch.js | 5 + 10 files changed, 388 insertions(+) create mode 100644 .gitignore create mode 100644 Gruntfile.js create mode 100644 LICENSE create mode 100644 dist/jquery.quicksearch.js create mode 100644 dist/jquery.quicksearch.min.js create mode 100644 dist/jquery.quicksearch.min.js.map create mode 100644 jquery.quicksearch.jquery.json create mode 100644 package.json diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..a2705a6 --- /dev/null +++ b/.gitignore @@ -0,0 +1,4 @@ +*~ +.project +.settings +node_modules diff --git a/Gruntfile.js b/Gruntfile.js new file mode 100644 index 0000000..34aa965 --- /dev/null +++ b/Gruntfile.js @@ -0,0 +1,113 @@ +/*global module:false, require:false*/ +var md = require('matchdep'); + +module.exports = function(grunt) { + + 'use strict'; + + var gruntfile = 'Gruntfile.js'; + var sources = ['src/<%= pkg.name %>.js']; + + md.filter('grunt-*').forEach(grunt.loadNpmTasks); + + // Project configuration. + grunt.initConfig({ + pkg: grunt.file.readJSON('package.json'), + meta: { + banner: '/*! <%= pkg.title || pkg.name %> - v<%= pkg.version %> - ' + + '<%= grunt.template.today("yyyy-mm-dd") %>\n' + + '<%= pkg.homepage ? "* " + pkg.homepage + "\\n" : "" %>' + + '* Copyright (c) <%= grunt.template.today("yyyy") %> <%= pkg.author[0].name %> (<%= pkg.author[0].url %>);\n' + + '* Licensed <%= _.pluck(pkg.licenses, "type").join(", ") %> http://deuxhuithuit.mit-license.org */\n' + }, + concat: { + options: { + process: true, + banner: '<%= meta.banner %>' + }, + dist: { + src: sources, + dest: 'dist/<%= pkg.name %>.js' + } + }, + + watch: { + files: sources.concat(gruntfile), + tasks: ['dev'] + }, + + jshint: { + files: sources.concat(gruntfile), + options: { + curly: true, + eqeqeq: false, // allow == + immed: false, // + latedef: false, // late definition + newcap: false, // capitalize ctos + nonew: true, // no new ..() + noarg: true, + sub: true, + undef: true, + //boss: true, + eqnull: true, // relax + browser: true, + regexp: true, + strict: true, + trailing: false, + smarttabs: true, + lastsemic: true, + globals: { + console: true, + jQuery: true, + pd: true, + _: true, + Popcorn: true, + DEBUG: true, + CSS3: true, + JSON: true + } + } + }, + uglify: { + prod: { + files: { + 'dist/<%= pkg.name %>.min.js': '<%= concat.dist.dest %>' + } + }, + options: { + banner: '<%= meta.banner %>', + report: 'gzip', + sourceMap: 'dist/<%= pkg.name %>.min.js.map', + sourceMappingURL: '<%= pkg.name %>.min.js.map', + mangle: true, + compress: { + global_defs: { + DEBUG: false + }, + dead_code: true, + unused: true, + warnings: true + } + } + }, + + complexity: { + generic: { + src: sources, + options: { + //jsLintXML: 'report.xml', // create XML JSLint-like report + errorsOnly: false, // show only maintainability errors + cyclomatic: 10, // 3 + halstead: 17, // 8 + maintainability: 95 //100 + } + } + } + }); + + // Default task. + + grunt.registerTask('dev', ['jshint','complexity']); + grunt.registerTask('build', ['concat','uglify']); + grunt.registerTask('default', ['dev','build']); +}; \ No newline at end of file diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..ddc4c17 --- /dev/null +++ b/LICENSE @@ -0,0 +1,27 @@ +All source code included in this jQuery Plugin +is, unless otherwise specified, released under the MIT licence as +follows: + +----- begin license block ----- + +Copyright 2013 Deux Huit Huit + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + +----- end license block ----- \ No newline at end of file diff --git a/README.md b/README.md index 1faaa61..c2854cf 100644 --- a/README.md +++ b/README.md @@ -151,6 +151,8 @@ jQuery quicksearch is made by [Rik Lomas][rik_site] at [Lomalogue][lomalogue_sit Thanks to [Seth F.][thelizardreborn] for fixes and [Krzysiek Goj][goj] for the testQuery and prepareQuery option updates +Now licensed under the MIT License: + [jquery_site]: http://www.jquery.com [rik_site]: http://www.riklomas.co.uk [lomalogue_site]: http://www.lomalogue.com diff --git a/dist/jquery.quicksearch.js b/dist/jquery.quicksearch.js new file mode 100644 index 0000000..c1c57f3 --- /dev/null +++ b/dist/jquery.quicksearch.js @@ -0,0 +1,158 @@ +/*! jQuery-QuickSearch - v2.0.0 - 2013-10-31 +* Copyright (c) 2013 Deux Huit Huit (http://deuxhuithuit.com/); +* Licensed MIT http://deuxhuithuit.mit-license.org */ +/** + * Copyrights: Deux Huit Huit, Rik Lomas. + * Licensed MIT: http://deuxhuithuit.mit-license.org + */ + +(function($, window, document, undefined) { + $.fn.quicksearch = function (target, opt) { + + var timeout, cache, rowcache, jq_results, val = '', e = this, options = $.extend({ + delay: 100, + selector: null, + stripeRows: null, + loader: null, + noResults: '', + bind: 'keyup', + onBefore: function () { + return; + }, + onAfter: function () { + return; + }, + show: function () { + this.style.display = ""; + }, + hide: function () { + this.style.display = "none"; + }, + prepareQuery: function (val) { + return val.toLowerCase().split(' '); + }, + testQuery: function (query, txt, _row) { + for (var i = 0; i < query.length; i += 1) { + if (txt.indexOf(query[i]) === -1) { + return false; + } + } + return true; + } + }, opt); + + this.go = function () { + + var i = 0, + noresults = true, + query = options.prepareQuery(val), + val_empty = (val.replace(' ', '').length === 0); + + for (var i = 0, len = rowcache.length; i < len; i++) { + if (val_empty || options.testQuery(query, cache[i], rowcache[i])) { + options.show.apply(rowcache[i]); + noresults = false; + } else { + options.hide.apply(rowcache[i]); + } + } + + if (noresults) { + this.results(false); + } else { + this.results(true); + this.stripe(); + } + + this.loader(false); + options.onAfter(); + + return this; + }; + + this.stripe = function () { + + if (typeof options.stripeRows === "object" && options.stripeRows !== null) + { + var joined = options.stripeRows.join(' '); + var stripeRows_length = options.stripeRows.length; + + jq_results.not(':hidden').each(function (i) { + $(this).removeClass(joined).addClass(options.stripeRows[i % stripeRows_length]); + }); + } + + return this; + }; + + this.strip_html = function (input) { + var output = input.replace(new RegExp('<[^<]+\>', 'g'), ""); + output = $.trim(output.toLowerCase()); + return output; + }; + + this.results = function (bool) { + if (typeof options.noResults === "string" && options.noResults !== "") { + if (bool) { + $(options.noResults).hide(); + } else { + $(options.noResults).show(); + } + } + return this; + }; + + this.loader = function (bool) { + if (typeof options.loader === "string" && options.loader !== "") { + (bool) ? $(options.loader).show() : $(options.loader).hide(); + } + return this; + }; + + this.cache = function () { + + jq_results = $(target); + + if (typeof options.noResults === "string" && options.noResults !== "") { + jq_results = jq_results.not(options.noResults); + } + + var t = (typeof options.selector === "string") ? jq_results.find(options.selector) : $(target).not(options.noResults); + cache = t.map(function () { + return e.strip_html(this.innerHTML); + }); + + rowcache = jq_results.map(function () { + return this; + }); + + return this.go(); + }; + + this.trigger = function () { + this.loader(true); + options.onBefore(); + + window.clearTimeout(timeout); + timeout = window.setTimeout(function () { + e.go(); + }, options.delay); + + return this; + }; + + this.cache(); + this.results(true); + this.stripe(); + this.loader(false); + + return this.each(function () { + $(this).bind(options.bind, function () { + val = $(this).val(); + e.trigger(); + }); + }); + + }; + +}(jQuery, this, document)); \ No newline at end of file diff --git a/dist/jquery.quicksearch.min.js b/dist/jquery.quicksearch.min.js new file mode 100644 index 0000000..216c58e --- /dev/null +++ b/dist/jquery.quicksearch.min.js @@ -0,0 +1,5 @@ +/*! jQuery-QuickSearch - v2.0.0 - 2013-10-31 +* Copyright (c) 2013 Deux Huit Huit (http://deuxhuithuit.com/); +* Licensed MIT http://deuxhuithuit.mit-license.org */ +!function(a,b){a.fn.quicksearch=function(c,d){var e,f,g,h,i="",j=this,k=a.extend({delay:100,selector:null,stripeRows:null,loader:null,noResults:"",bind:"keyup",onBefore:function(){},onAfter:function(){},show:function(){this.style.display=""},hide:function(){this.style.display="none"},prepareQuery:function(a){return a.toLowerCase().split(" ")},testQuery:function(a,b){for(var c=0;ca;a++)d||k.testQuery(c,f[a],g[a])?(k.show.apply(g[a]),b=!1):k.hide.apply(g[a]);return b?this.results(!1):(this.results(!0),this.stripe()),this.loader(!1),k.onAfter(),this},this.stripe=function(){if("object"==typeof k.stripeRows&&null!==k.stripeRows){var b=k.stripeRows.join(" "),c=k.stripeRows.length;h.not(":hidden").each(function(d){a(this).removeClass(b).addClass(k.stripeRows[d%c])})}return this},this.strip_html=function(b){var c=b.replace(new RegExp("<[^<]+>","g"),"");return c=a.trim(c.toLowerCase())},this.results=function(b){return"string"==typeof k.noResults&&""!==k.noResults&&(b?a(k.noResults).hide():a(k.noResults).show()),this},this.loader=function(b){return"string"==typeof k.loader&&""!==k.loader&&(b?a(k.loader).show():a(k.loader).hide()),this},this.cache=function(){h=a(c),"string"==typeof k.noResults&&""!==k.noResults&&(h=h.not(k.noResults));var b="string"==typeof k.selector?h.find(k.selector):a(c).not(k.noResults);return f=b.map(function(){return j.strip_html(this.innerHTML)}),g=h.map(function(){return this}),this.go()},this.trigger=function(){return this.loader(!0),k.onBefore(),b.clearTimeout(e),e=b.setTimeout(function(){j.go()},k.delay),this},this.cache(),this.results(!0),this.stripe(),this.loader(!1),this.each(function(){a(this).bind(k.bind,function(){i=a(this).val(),j.trigger()})})}}(jQuery,this,document); +//# sourceMappingURL=jquery.quicksearch.min.js.map \ No newline at end of file diff --git a/dist/jquery.quicksearch.min.js.map b/dist/jquery.quicksearch.min.js.map new file mode 100644 index 0000000..5287eee --- /dev/null +++ b/dist/jquery.quicksearch.min.js.map @@ -0,0 +1 @@ +{"version":3,"file":"dist/jquery.quicksearch.min.js","sources":["dist/jquery.quicksearch.js"],"names":["$","window","fn","quicksearch","target","opt","timeout","cache","rowcache","jq_results","val","e","this","options","extend","delay","selector","stripeRows","loader","noResults","bind","onBefore","onAfter","show","style","display","hide","prepareQuery","toLowerCase","split","testQuery","query","txt","i","length","indexOf","go","noresults","val_empty","replace","len","apply","results","stripe","joined","join","stripeRows_length","not","each","removeClass","addClass","strip_html","input","output","RegExp","trim","bool","t","find","map","innerHTML","trigger","clearTimeout","setTimeout","jQuery","document"],"mappings":"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"} \ No newline at end of file diff --git a/jquery.quicksearch.jquery.json b/jquery.quicksearch.jquery.json new file mode 100644 index 0000000..6b6aeb4 --- /dev/null +++ b/jquery.quicksearch.jquery.json @@ -0,0 +1,31 @@ +{ + "name": "jquery.quicksearch", + "title": "jQuery-QuickSearch", + "description": "A jQuery plugin for searching through tables, lists, etc quickly", + "version": "2.0.0", + "homepage": "", + "author": [ + { + "name": "Deux Huit Huit", + "url": "http://deuxhuithuit.com/" + }, + { + "name": "Rik Lomas", + "url": "http://www.riklomas.co.uk/" + } + ], + "licenses": [ + { + "type": "MIT", + "url": "http://deuxhuithuit.mit-license.org/" + } + ], + "repository": { + "type": "git", + "url": "git://github.com/DeuxHuitHuit/quicksearch.git" + }, + "bugs": { + "url": "https://github.com/DeuxHuitHuit/quicksearch/issues" + }, + "keywords": ["quicksearch"] +} \ No newline at end of file diff --git a/package.json b/package.json new file mode 100644 index 0000000..16bbb05 --- /dev/null +++ b/package.json @@ -0,0 +1,42 @@ +{ + "name": "jquery.quicksearch", + "title": "jQuery-QuickSearch", + "description": "A jQuery plugin for searching through tables, lists, etc quickly", + "version": "2.0.0", + "homepage": "", + "author": [ + { + "name": "Deux Huit Huit", + "url": "http://deuxhuithuit.com/" + }, + { + "name": "Rik Lomas", + "url": "http://www.riklomas.co.uk/" + } + ], + "licenses": [ + { + "type": "MIT", + "url": "http://deuxhuithuit.mit-license.org/" + } + ], + "repository": { + "type": "git", + "url": "git://github.com/DeuxHuitHuit/quicksearch.git" + }, + "bugs": { + "url": "https://github.com/DeuxHuitHuit/quicksearch/issues" + }, + "dependencies": { + "grunt": "~0.4.1", + "grunt-cli": "~0.1.9", + "grunt-complexity": "~0.1.0", + "grunt-contrib-uglify": "~0.2.0", + "grunt-contrib-jshint": "~0.4.3", + "grunt-contrib-concat": "~0.2.0", + "grunt-contrib-watch": "~0.4.4", + "grunt-banner": "~0.2.0", + "matchdep": "~0.3.0" + }, + "keywords": ["quicksearch"] +} diff --git a/src/jquery.quicksearch.js b/src/jquery.quicksearch.js index d4046df..16e609a 100644 --- a/src/jquery.quicksearch.js +++ b/src/jquery.quicksearch.js @@ -1,3 +1,8 @@ +/** + * Copyrights: Deux Huit Huit, Rik Lomas. + * Licensed MIT: http://deuxhuithuit.mit-license.org + */ + (function($, window, document, undefined) { $.fn.quicksearch = function (target, opt) { From d3a1d7774a4caf31b65d3343617060c914089126 Mon Sep 17 00:00:00 2001 From: Nicolas Brassard Date: Thu, 31 Oct 2013 14:02:25 -0400 Subject: [PATCH 10/58] New release since merge with all pull requests --- dist/jquery.quicksearch.js | 177 +++++++++++++++++++++++++---- dist/jquery.quicksearch.min.js | 2 +- dist/jquery.quicksearch.min.js.map | 2 +- 3 files changed, 160 insertions(+), 21 deletions(-) diff --git a/dist/jquery.quicksearch.js b/dist/jquery.quicksearch.js index c1c57f3..07a7db8 100644 --- a/dist/jquery.quicksearch.js +++ b/dist/jquery.quicksearch.js @@ -9,12 +9,108 @@ (function($, window, document, undefined) { $.fn.quicksearch = function (target, opt) { + var defaultDiacriticsRemovalMap = [ + {'base':'A', 'letters':/[\u0041\u24B6\uFF21\u00C0\u00C1\u00C2\u1EA6\u1EA4\u1EAA\u1EA8\u00C3\u0100\u0102\u1EB0\u1EAE\u1EB4\u1EB2\u0226\u01E0\u00C4\u01DE\u1EA2\u00C5\u01FA\u01CD\u0200\u0202\u1EA0\u1EAC\u1EB6\u1E00\u0104\u023A\u2C6F]/g}, + {'base':'AA','letters':/[\uA732]/g}, + {'base':'AE','letters':/[\u00C6\u01FC\u01E2]/g}, + {'base':'AO','letters':/[\uA734]/g}, + {'base':'AU','letters':/[\uA736]/g}, + {'base':'AV','letters':/[\uA738\uA73A]/g}, + {'base':'AY','letters':/[\uA73C]/g}, + {'base':'B', 'letters':/[\u0042\u24B7\uFF22\u1E02\u1E04\u1E06\u0243\u0182\u0181]/g}, + {'base':'C', 'letters':/[\u0043\u24B8\uFF23\u0106\u0108\u010A\u010C\u00C7\u1E08\u0187\u023B\uA73E]/g}, + {'base':'D', 'letters':/[\u0044\u24B9\uFF24\u1E0A\u010E\u1E0C\u1E10\u1E12\u1E0E\u0110\u018B\u018A\u0189\uA779]/g}, + {'base':'DZ','letters':/[\u01F1\u01C4]/g}, + {'base':'Dz','letters':/[\u01F2\u01C5]/g}, + {'base':'E', 'letters':/[\u0045\u24BA\uFF25\u00C8\u00C9\u00CA\u1EC0\u1EBE\u1EC4\u1EC2\u1EBC\u0112\u1E14\u1E16\u0114\u0116\u00CB\u1EBA\u011A\u0204\u0206\u1EB8\u1EC6\u0228\u1E1C\u0118\u1E18\u1E1A\u0190\u018E]/g}, + {'base':'F', 'letters':/[\u0046\u24BB\uFF26\u1E1E\u0191\uA77B]/g}, + {'base':'G', 'letters':/[\u0047\u24BC\uFF27\u01F4\u011C\u1E20\u011E\u0120\u01E6\u0122\u01E4\u0193\uA7A0\uA77D\uA77E]/g}, + {'base':'H', 'letters':/[\u0048\u24BD\uFF28\u0124\u1E22\u1E26\u021E\u1E24\u1E28\u1E2A\u0126\u2C67\u2C75\uA78D]/g}, + {'base':'I', 'letters':/[\u0049\u24BE\uFF29\u00CC\u00CD\u00CE\u0128\u012A\u012C\u0130\u00CF\u1E2E\u1EC8\u01CF\u0208\u020A\u1ECA\u012E\u1E2C\u0197]/g}, + {'base':'J', 'letters':/[\u004A\u24BF\uFF2A\u0134\u0248]/g}, + {'base':'K', 'letters':/[\u004B\u24C0\uFF2B\u1E30\u01E8\u1E32\u0136\u1E34\u0198\u2C69\uA740\uA742\uA744\uA7A2]/g}, + {'base':'L', 'letters':/[\u004C\u24C1\uFF2C\u013F\u0139\u013D\u1E36\u1E38\u013B\u1E3C\u1E3A\u0141\u023D\u2C62\u2C60\uA748\uA746\uA780]/g}, + {'base':'LJ','letters':/[\u01C7]/g}, + {'base':'Lj','letters':/[\u01C8]/g}, + {'base':'M', 'letters':/[\u004D\u24C2\uFF2D\u1E3E\u1E40\u1E42\u2C6E\u019C]/g}, + {'base':'N', 'letters':/[\u004E\u24C3\uFF2E\u01F8\u0143\u00D1\u1E44\u0147\u1E46\u0145\u1E4A\u1E48\u0220\u019D\uA790\uA7A4]/g}, + {'base':'NJ','letters':/[\u01CA]/g}, + {'base':'Nj','letters':/[\u01CB]/g}, + {'base':'O', 'letters':/[\u004F\u24C4\uFF2F\u00D2\u00D3\u00D4\u1ED2\u1ED0\u1ED6\u1ED4\u00D5\u1E4C\u022C\u1E4E\u014C\u1E50\u1E52\u014E\u022E\u0230\u00D6\u022A\u1ECE\u0150\u01D1\u020C\u020E\u01A0\u1EDC\u1EDA\u1EE0\u1EDE\u1EE2\u1ECC\u1ED8\u01EA\u01EC\u00D8\u01FE\u0186\u019F\uA74A\uA74C]/g}, + {'base':'OI','letters':/[\u01A2]/g}, + {'base':'OO','letters':/[\uA74E]/g}, + {'base':'OU','letters':/[\u0222]/g}, + {'base':'P', 'letters':/[\u0050\u24C5\uFF30\u1E54\u1E56\u01A4\u2C63\uA750\uA752\uA754]/g}, + {'base':'Q', 'letters':/[\u0051\u24C6\uFF31\uA756\uA758\u024A]/g}, + {'base':'R', 'letters':/[\u0052\u24C7\uFF32\u0154\u1E58\u0158\u0210\u0212\u1E5A\u1E5C\u0156\u1E5E\u024C\u2C64\uA75A\uA7A6\uA782]/g}, + {'base':'S', 'letters':/[\u0053\u24C8\uFF33\u1E9E\u015A\u1E64\u015C\u1E60\u0160\u1E66\u1E62\u1E68\u0218\u015E\u2C7E\uA7A8\uA784]/g}, + {'base':'T', 'letters':/[\u0054\u24C9\uFF34\u1E6A\u0164\u1E6C\u021A\u0162\u1E70\u1E6E\u0166\u01AC\u01AE\u023E\uA786]/g}, + {'base':'TZ','letters':/[\uA728]/g}, + {'base':'U', 'letters':/[\u0055\u24CA\uFF35\u00D9\u00DA\u00DB\u0168\u1E78\u016A\u1E7A\u016C\u00DC\u01DB\u01D7\u01D5\u01D9\u1EE6\u016E\u0170\u01D3\u0214\u0216\u01AF\u1EEA\u1EE8\u1EEE\u1EEC\u1EF0\u1EE4\u1E72\u0172\u1E76\u1E74\u0244]/g}, + {'base':'V', 'letters':/[\u0056\u24CB\uFF36\u1E7C\u1E7E\u01B2\uA75E\u0245]/g}, + {'base':'VY','letters':/[\uA760]/g}, + {'base':'W', 'letters':/[\u0057\u24CC\uFF37\u1E80\u1E82\u0174\u1E86\u1E84\u1E88\u2C72]/g}, + {'base':'X', 'letters':/[\u0058\u24CD\uFF38\u1E8A\u1E8C]/g}, + {'base':'Y', 'letters':/[\u0059\u24CE\uFF39\u1EF2\u00DD\u0176\u1EF8\u0232\u1E8E\u0178\u1EF6\u1EF4\u01B3\u024E\u1EFE]/g}, + {'base':'Z', 'letters':/[\u005A\u24CF\uFF3A\u0179\u1E90\u017B\u017D\u1E92\u1E94\u01B5\u0224\u2C7F\u2C6B\uA762]/g}, + {'base':'a', 'letters':/[\u0061\u24D0\uFF41\u1E9A\u00E0\u00E1\u00E2\u1EA7\u1EA5\u1EAB\u1EA9\u00E3\u0101\u0103\u1EB1\u1EAF\u1EB5\u1EB3\u0227\u01E1\u00E4\u01DF\u1EA3\u00E5\u01FB\u01CE\u0201\u0203\u1EA1\u1EAD\u1EB7\u1E01\u0105\u2C65\u0250]/g}, + {'base':'aa','letters':/[\uA733]/g}, + {'base':'ae','letters':/[\u00E6\u01FD\u01E3]/g}, + {'base':'ao','letters':/[\uA735]/g}, + {'base':'au','letters':/[\uA737]/g}, + {'base':'av','letters':/[\uA739\uA73B]/g}, + {'base':'ay','letters':/[\uA73D]/g}, + {'base':'b', 'letters':/[\u0062\u24D1\uFF42\u1E03\u1E05\u1E07\u0180\u0183\u0253]/g}, + {'base':'c', 'letters':/[\u0063\u24D2\uFF43\u0107\u0109\u010B\u010D\u00E7\u1E09\u0188\u023C\uA73F\u2184]/g}, + {'base':'d', 'letters':/[\u0064\u24D3\uFF44\u1E0B\u010F\u1E0D\u1E11\u1E13\u1E0F\u0111\u018C\u0256\u0257\uA77A]/g}, + {'base':'dz','letters':/[\u01F3\u01C6]/g}, + {'base':'e', 'letters':/[\u0065\u24D4\uFF45\u00E8\u00E9\u00EA\u1EC1\u1EBF\u1EC5\u1EC3\u1EBD\u0113\u1E15\u1E17\u0115\u0117\u00EB\u1EBB\u011B\u0205\u0207\u1EB9\u1EC7\u0229\u1E1D\u0119\u1E19\u1E1B\u0247\u025B\u01DD]/g}, + {'base':'f', 'letters':/[\u0066\u24D5\uFF46\u1E1F\u0192\uA77C]/g}, + {'base':'g', 'letters':/[\u0067\u24D6\uFF47\u01F5\u011D\u1E21\u011F\u0121\u01E7\u0123\u01E5\u0260\uA7A1\u1D79\uA77F]/g}, + {'base':'h', 'letters':/[\u0068\u24D7\uFF48\u0125\u1E23\u1E27\u021F\u1E25\u1E29\u1E2B\u1E96\u0127\u2C68\u2C76\u0265]/g}, + {'base':'hv','letters':/[\u0195]/g}, + {'base':'i', 'letters':/[\u0069\u24D8\uFF49\u00EC\u00ED\u00EE\u0129\u012B\u012D\u00EF\u1E2F\u1EC9\u01D0\u0209\u020B\u1ECB\u012F\u1E2D\u0268\u0131]/g}, + {'base':'j', 'letters':/[\u006A\u24D9\uFF4A\u0135\u01F0\u0249]/g}, + {'base':'k', 'letters':/[\u006B\u24DA\uFF4B\u1E31\u01E9\u1E33\u0137\u1E35\u0199\u2C6A\uA741\uA743\uA745\uA7A3]/g}, + {'base':'l', 'letters':/[\u006C\u24DB\uFF4C\u0140\u013A\u013E\u1E37\u1E39\u013C\u1E3D\u1E3B\u017F\u0142\u019A\u026B\u2C61\uA749\uA781\uA747]/g}, + {'base':'lj','letters':/[\u01C9]/g}, + {'base':'m', 'letters':/[\u006D\u24DC\uFF4D\u1E3F\u1E41\u1E43\u0271\u026F]/g}, + {'base':'n', 'letters':/[\u006E\u24DD\uFF4E\u01F9\u0144\u00F1\u1E45\u0148\u1E47\u0146\u1E4B\u1E49\u019E\u0272\u0149\uA791\uA7A5]/g}, + {'base':'nj','letters':/[\u01CC]/g}, + {'base':'o', 'letters':/[\u006F\u24DE\uFF4F\u00F2\u00F3\u00F4\u1ED3\u1ED1\u1ED7\u1ED5\u00F5\u1E4D\u022D\u1E4F\u014D\u1E51\u1E53\u014F\u022F\u0231\u00F6\u022B\u1ECF\u0151\u01D2\u020D\u020F\u01A1\u1EDD\u1EDB\u1EE1\u1EDF\u1EE3\u1ECD\u1ED9\u01EB\u01ED\u00F8\u01FF\u0254\uA74B\uA74D\u0275]/g}, + {'base':'oi','letters':/[\u01A3]/g}, + {'base':'ou','letters':/[\u0223]/g}, + {'base':'oo','letters':/[\uA74F]/g}, + {'base':'p','letters':/[\u0070\u24DF\uFF50\u1E55\u1E57\u01A5\u1D7D\uA751\uA753\uA755]/g}, + {'base':'q','letters':/[\u0071\u24E0\uFF51\u024B\uA757\uA759]/g}, + {'base':'r','letters':/[\u0072\u24E1\uFF52\u0155\u1E59\u0159\u0211\u0213\u1E5B\u1E5D\u0157\u1E5F\u024D\u027D\uA75B\uA7A7\uA783]/g}, + {'base':'s','letters':/[\u0073\u24E2\uFF53\u00DF\u015B\u1E65\u015D\u1E61\u0161\u1E67\u1E63\u1E69\u0219\u015F\u023F\uA7A9\uA785\u1E9B]/g}, + {'base':'t','letters':/[\u0074\u24E3\uFF54\u1E6B\u1E97\u0165\u1E6D\u021B\u0163\u1E71\u1E6F\u0167\u01AD\u0288\u2C66\uA787]/g}, + {'base':'tz','letters':/[\uA729]/g}, + {'base':'u','letters':/[\u0075\u24E4\uFF55\u00F9\u00FA\u00FB\u0169\u1E79\u016B\u1E7B\u016D\u00FC\u01DC\u01D8\u01D6\u01DA\u1EE7\u016F\u0171\u01D4\u0215\u0217\u01B0\u1EEB\u1EE9\u1EEF\u1EED\u1EF1\u1EE5\u1E73\u0173\u1E77\u1E75\u0289]/g}, + {'base':'v','letters':/[\u0076\u24E5\uFF56\u1E7D\u1E7F\u028B\uA75F\u028C]/g}, + {'base':'vy','letters':/[\uA761]/g}, + {'base':'w','letters':/[\u0077\u24E6\uFF57\u1E81\u1E83\u0175\u1E87\u1E85\u1E98\u1E89\u2C73]/g}, + {'base':'x','letters':/[\u0078\u24E7\uFF58\u1E8B\u1E8D]/g}, + {'base':'y','letters':/[\u0079\u24E8\uFF59\u1EF3\u00FD\u0177\u1EF9\u0233\u1E8F\u00FF\u1EF7\u1E99\u1EF5\u01B4\u024F\u1EFF]/g}, + {'base':'z','letters':/[\u007A\u24E9\uFF5A\u017A\u1E91\u017C\u017E\u1E93\u1E95\u01B6\u0225\u0240\u2C6C\uA763]/g} + ]; + + this.removeDiacritics = function(str) { + var changes = defaultDiacriticsRemovalMap; + for(var i=0; ia;a++)d||k.testQuery(c,f[a],g[a])?(k.show.apply(g[a]),b=!1):k.hide.apply(g[a]);return b?this.results(!1):(this.results(!0),this.stripe()),this.loader(!1),k.onAfter(),this},this.stripe=function(){if("object"==typeof k.stripeRows&&null!==k.stripeRows){var b=k.stripeRows.join(" "),c=k.stripeRows.length;h.not(":hidden").each(function(d){a(this).removeClass(b).addClass(k.stripeRows[d%c])})}return this},this.strip_html=function(b){var c=b.replace(new RegExp("<[^<]+>","g"),"");return c=a.trim(c.toLowerCase())},this.results=function(b){return"string"==typeof k.noResults&&""!==k.noResults&&(b?a(k.noResults).hide():a(k.noResults).show()),this},this.loader=function(b){return"string"==typeof k.loader&&""!==k.loader&&(b?a(k.loader).show():a(k.loader).hide()),this},this.cache=function(){h=a(c),"string"==typeof k.noResults&&""!==k.noResults&&(h=h.not(k.noResults));var b="string"==typeof k.selector?h.find(k.selector):a(c).not(k.noResults);return f=b.map(function(){return j.strip_html(this.innerHTML)}),g=h.map(function(){return this}),this.go()},this.trigger=function(){return this.loader(!0),k.onBefore(),b.clearTimeout(e),e=b.setTimeout(function(){j.go()},k.delay),this},this.cache(),this.results(!0),this.stripe(),this.loader(!1),this.each(function(){a(this).bind(k.bind,function(){i=a(this).val(),j.trigger()})})}}(jQuery,this,document); +!function(a,b){a.fn.quicksearch=function(c,d){var e=[{base:"A",letters:/[\u0041\u24B6\uFF21\u00C0\u00C1\u00C2\u1EA6\u1EA4\u1EAA\u1EA8\u00C3\u0100\u0102\u1EB0\u1EAE\u1EB4\u1EB2\u0226\u01E0\u00C4\u01DE\u1EA2\u00C5\u01FA\u01CD\u0200\u0202\u1EA0\u1EAC\u1EB6\u1E00\u0104\u023A\u2C6F]/g},{base:"AA",letters:/[\uA732]/g},{base:"AE",letters:/[\u00C6\u01FC\u01E2]/g},{base:"AO",letters:/[\uA734]/g},{base:"AU",letters:/[\uA736]/g},{base:"AV",letters:/[\uA738\uA73A]/g},{base:"AY",letters:/[\uA73C]/g},{base:"B",letters:/[\u0042\u24B7\uFF22\u1E02\u1E04\u1E06\u0243\u0182\u0181]/g},{base:"C",letters:/[\u0043\u24B8\uFF23\u0106\u0108\u010A\u010C\u00C7\u1E08\u0187\u023B\uA73E]/g},{base:"D",letters:/[\u0044\u24B9\uFF24\u1E0A\u010E\u1E0C\u1E10\u1E12\u1E0E\u0110\u018B\u018A\u0189\uA779]/g},{base:"DZ",letters:/[\u01F1\u01C4]/g},{base:"Dz",letters:/[\u01F2\u01C5]/g},{base:"E",letters:/[\u0045\u24BA\uFF25\u00C8\u00C9\u00CA\u1EC0\u1EBE\u1EC4\u1EC2\u1EBC\u0112\u1E14\u1E16\u0114\u0116\u00CB\u1EBA\u011A\u0204\u0206\u1EB8\u1EC6\u0228\u1E1C\u0118\u1E18\u1E1A\u0190\u018E]/g},{base:"F",letters:/[\u0046\u24BB\uFF26\u1E1E\u0191\uA77B]/g},{base:"G",letters:/[\u0047\u24BC\uFF27\u01F4\u011C\u1E20\u011E\u0120\u01E6\u0122\u01E4\u0193\uA7A0\uA77D\uA77E]/g},{base:"H",letters:/[\u0048\u24BD\uFF28\u0124\u1E22\u1E26\u021E\u1E24\u1E28\u1E2A\u0126\u2C67\u2C75\uA78D]/g},{base:"I",letters:/[\u0049\u24BE\uFF29\u00CC\u00CD\u00CE\u0128\u012A\u012C\u0130\u00CF\u1E2E\u1EC8\u01CF\u0208\u020A\u1ECA\u012E\u1E2C\u0197]/g},{base:"J",letters:/[\u004A\u24BF\uFF2A\u0134\u0248]/g},{base:"K",letters:/[\u004B\u24C0\uFF2B\u1E30\u01E8\u1E32\u0136\u1E34\u0198\u2C69\uA740\uA742\uA744\uA7A2]/g},{base:"L",letters:/[\u004C\u24C1\uFF2C\u013F\u0139\u013D\u1E36\u1E38\u013B\u1E3C\u1E3A\u0141\u023D\u2C62\u2C60\uA748\uA746\uA780]/g},{base:"LJ",letters:/[\u01C7]/g},{base:"Lj",letters:/[\u01C8]/g},{base:"M",letters:/[\u004D\u24C2\uFF2D\u1E3E\u1E40\u1E42\u2C6E\u019C]/g},{base:"N",letters:/[\u004E\u24C3\uFF2E\u01F8\u0143\u00D1\u1E44\u0147\u1E46\u0145\u1E4A\u1E48\u0220\u019D\uA790\uA7A4]/g},{base:"NJ",letters:/[\u01CA]/g},{base:"Nj",letters:/[\u01CB]/g},{base:"O",letters:/[\u004F\u24C4\uFF2F\u00D2\u00D3\u00D4\u1ED2\u1ED0\u1ED6\u1ED4\u00D5\u1E4C\u022C\u1E4E\u014C\u1E50\u1E52\u014E\u022E\u0230\u00D6\u022A\u1ECE\u0150\u01D1\u020C\u020E\u01A0\u1EDC\u1EDA\u1EE0\u1EDE\u1EE2\u1ECC\u1ED8\u01EA\u01EC\u00D8\u01FE\u0186\u019F\uA74A\uA74C]/g},{base:"OI",letters:/[\u01A2]/g},{base:"OO",letters:/[\uA74E]/g},{base:"OU",letters:/[\u0222]/g},{base:"P",letters:/[\u0050\u24C5\uFF30\u1E54\u1E56\u01A4\u2C63\uA750\uA752\uA754]/g},{base:"Q",letters:/[\u0051\u24C6\uFF31\uA756\uA758\u024A]/g},{base:"R",letters:/[\u0052\u24C7\uFF32\u0154\u1E58\u0158\u0210\u0212\u1E5A\u1E5C\u0156\u1E5E\u024C\u2C64\uA75A\uA7A6\uA782]/g},{base:"S",letters:/[\u0053\u24C8\uFF33\u1E9E\u015A\u1E64\u015C\u1E60\u0160\u1E66\u1E62\u1E68\u0218\u015E\u2C7E\uA7A8\uA784]/g},{base:"T",letters:/[\u0054\u24C9\uFF34\u1E6A\u0164\u1E6C\u021A\u0162\u1E70\u1E6E\u0166\u01AC\u01AE\u023E\uA786]/g},{base:"TZ",letters:/[\uA728]/g},{base:"U",letters:/[\u0055\u24CA\uFF35\u00D9\u00DA\u00DB\u0168\u1E78\u016A\u1E7A\u016C\u00DC\u01DB\u01D7\u01D5\u01D9\u1EE6\u016E\u0170\u01D3\u0214\u0216\u01AF\u1EEA\u1EE8\u1EEE\u1EEC\u1EF0\u1EE4\u1E72\u0172\u1E76\u1E74\u0244]/g},{base:"V",letters:/[\u0056\u24CB\uFF36\u1E7C\u1E7E\u01B2\uA75E\u0245]/g},{base:"VY",letters:/[\uA760]/g},{base:"W",letters:/[\u0057\u24CC\uFF37\u1E80\u1E82\u0174\u1E86\u1E84\u1E88\u2C72]/g},{base:"X",letters:/[\u0058\u24CD\uFF38\u1E8A\u1E8C]/g},{base:"Y",letters:/[\u0059\u24CE\uFF39\u1EF2\u00DD\u0176\u1EF8\u0232\u1E8E\u0178\u1EF6\u1EF4\u01B3\u024E\u1EFE]/g},{base:"Z",letters:/[\u005A\u24CF\uFF3A\u0179\u1E90\u017B\u017D\u1E92\u1E94\u01B5\u0224\u2C7F\u2C6B\uA762]/g},{base:"a",letters:/[\u0061\u24D0\uFF41\u1E9A\u00E0\u00E1\u00E2\u1EA7\u1EA5\u1EAB\u1EA9\u00E3\u0101\u0103\u1EB1\u1EAF\u1EB5\u1EB3\u0227\u01E1\u00E4\u01DF\u1EA3\u00E5\u01FB\u01CE\u0201\u0203\u1EA1\u1EAD\u1EB7\u1E01\u0105\u2C65\u0250]/g},{base:"aa",letters:/[\uA733]/g},{base:"ae",letters:/[\u00E6\u01FD\u01E3]/g},{base:"ao",letters:/[\uA735]/g},{base:"au",letters:/[\uA737]/g},{base:"av",letters:/[\uA739\uA73B]/g},{base:"ay",letters:/[\uA73D]/g},{base:"b",letters:/[\u0062\u24D1\uFF42\u1E03\u1E05\u1E07\u0180\u0183\u0253]/g},{base:"c",letters:/[\u0063\u24D2\uFF43\u0107\u0109\u010B\u010D\u00E7\u1E09\u0188\u023C\uA73F\u2184]/g},{base:"d",letters:/[\u0064\u24D3\uFF44\u1E0B\u010F\u1E0D\u1E11\u1E13\u1E0F\u0111\u018C\u0256\u0257\uA77A]/g},{base:"dz",letters:/[\u01F3\u01C6]/g},{base:"e",letters:/[\u0065\u24D4\uFF45\u00E8\u00E9\u00EA\u1EC1\u1EBF\u1EC5\u1EC3\u1EBD\u0113\u1E15\u1E17\u0115\u0117\u00EB\u1EBB\u011B\u0205\u0207\u1EB9\u1EC7\u0229\u1E1D\u0119\u1E19\u1E1B\u0247\u025B\u01DD]/g},{base:"f",letters:/[\u0066\u24D5\uFF46\u1E1F\u0192\uA77C]/g},{base:"g",letters:/[\u0067\u24D6\uFF47\u01F5\u011D\u1E21\u011F\u0121\u01E7\u0123\u01E5\u0260\uA7A1\u1D79\uA77F]/g},{base:"h",letters:/[\u0068\u24D7\uFF48\u0125\u1E23\u1E27\u021F\u1E25\u1E29\u1E2B\u1E96\u0127\u2C68\u2C76\u0265]/g},{base:"hv",letters:/[\u0195]/g},{base:"i",letters:/[\u0069\u24D8\uFF49\u00EC\u00ED\u00EE\u0129\u012B\u012D\u00EF\u1E2F\u1EC9\u01D0\u0209\u020B\u1ECB\u012F\u1E2D\u0268\u0131]/g},{base:"j",letters:/[\u006A\u24D9\uFF4A\u0135\u01F0\u0249]/g},{base:"k",letters:/[\u006B\u24DA\uFF4B\u1E31\u01E9\u1E33\u0137\u1E35\u0199\u2C6A\uA741\uA743\uA745\uA7A3]/g},{base:"l",letters:/[\u006C\u24DB\uFF4C\u0140\u013A\u013E\u1E37\u1E39\u013C\u1E3D\u1E3B\u017F\u0142\u019A\u026B\u2C61\uA749\uA781\uA747]/g},{base:"lj",letters:/[\u01C9]/g},{base:"m",letters:/[\u006D\u24DC\uFF4D\u1E3F\u1E41\u1E43\u0271\u026F]/g},{base:"n",letters:/[\u006E\u24DD\uFF4E\u01F9\u0144\u00F1\u1E45\u0148\u1E47\u0146\u1E4B\u1E49\u019E\u0272\u0149\uA791\uA7A5]/g},{base:"nj",letters:/[\u01CC]/g},{base:"o",letters:/[\u006F\u24DE\uFF4F\u00F2\u00F3\u00F4\u1ED3\u1ED1\u1ED7\u1ED5\u00F5\u1E4D\u022D\u1E4F\u014D\u1E51\u1E53\u014F\u022F\u0231\u00F6\u022B\u1ECF\u0151\u01D2\u020D\u020F\u01A1\u1EDD\u1EDB\u1EE1\u1EDF\u1EE3\u1ECD\u1ED9\u01EB\u01ED\u00F8\u01FF\u0254\uA74B\uA74D\u0275]/g},{base:"oi",letters:/[\u01A3]/g},{base:"ou",letters:/[\u0223]/g},{base:"oo",letters:/[\uA74F]/g},{base:"p",letters:/[\u0070\u24DF\uFF50\u1E55\u1E57\u01A5\u1D7D\uA751\uA753\uA755]/g},{base:"q",letters:/[\u0071\u24E0\uFF51\u024B\uA757\uA759]/g},{base:"r",letters:/[\u0072\u24E1\uFF52\u0155\u1E59\u0159\u0211\u0213\u1E5B\u1E5D\u0157\u1E5F\u024D\u027D\uA75B\uA7A7\uA783]/g},{base:"s",letters:/[\u0073\u24E2\uFF53\u00DF\u015B\u1E65\u015D\u1E61\u0161\u1E67\u1E63\u1E69\u0219\u015F\u023F\uA7A9\uA785\u1E9B]/g},{base:"t",letters:/[\u0074\u24E3\uFF54\u1E6B\u1E97\u0165\u1E6D\u021B\u0163\u1E71\u1E6F\u0167\u01AD\u0288\u2C66\uA787]/g},{base:"tz",letters:/[\uA729]/g},{base:"u",letters:/[\u0075\u24E4\uFF55\u00F9\u00FA\u00FB\u0169\u1E79\u016B\u1E7B\u016D\u00FC\u01DC\u01D8\u01D6\u01DA\u1EE7\u016F\u0171\u01D4\u0215\u0217\u01B0\u1EEB\u1EE9\u1EEF\u1EED\u1EF1\u1EE5\u1E73\u0173\u1E77\u1E75\u0289]/g},{base:"v",letters:/[\u0076\u24E5\uFF56\u1E7D\u1E7F\u028B\uA75F\u028C]/g},{base:"vy",letters:/[\uA761]/g},{base:"w",letters:/[\u0077\u24E6\uFF57\u1E81\u1E83\u0175\u1E87\u1E85\u1E98\u1E89\u2C73]/g},{base:"x",letters:/[\u0078\u24E7\uFF58\u1E8B\u1E8D]/g},{base:"y",letters:/[\u0079\u24E8\uFF59\u1EF3\u00FD\u0177\u1EF9\u0233\u1E8F\u00FF\u1EF7\u1E99\u1EF5\u01B4\u024F\u1EFF]/g},{base:"z",letters:/[\u007A\u24E9\uFF5A\u017A\u1E91\u017C\u017E\u1E93\u1E95\u01B6\u0225\u0240\u2C6C\uA763]/g}];this.removeDiacritics=function(a){for(var b=e,c=0;ca;a++)e||l.testQuery(d,g[a],h[a])?(l.show.apply(h[a]),c=!1,b++):l.hide.apply(h[a]);return c?this.results(!1):(this.results(!0),this.stripe()),this.matchedResultsCount=b,this.loader(!1),l.onAfter(),this},this.search=function(a){j=a,k.trigger()},this.currentMatchedResults=function(){return this.matchedResultsCount},this.stripe=function(){if("object"==typeof l.stripeRows&&null!==l.stripeRows){var b=l.stripeRows.join(" "),c=l.stripeRows.length;i.not(":hidden").each(function(d){a(this).removeClass(b).addClass(l.stripeRows[d%c])})}return this},this.strip_html=function(b){var c=b.replace(new RegExp("<[^<]+>","g"),"");return c=a.trim(c.toLowerCase())},this.results=function(b){if(l.noResults){var c=l.noResults;"string"==typeof l.noResults&&(c=a(l.noResults)),b?c.hide():c.show()}return this},this.loader=function(b){return"string"==typeof l.loader&&""!==l.loader&&(b?a(l.loader).show():a(l.loader).hide()),this},this.cache=function(b){b="undefined"==typeof b?!0:b,i=l.noResults?a(c).not(l.noResults):a(c);var d="string"==typeof l.selector?i.find(l.selector):a(c).not(l.noResults);return g=d.map(function(){return k.removeDiacritics(k.strip_html(this.innerHTML))}),h=i.map(function(){return this}),j=j||this.val()||"",b&&this.go(),this},this.trigger=function(){return this.loader(!0),l.onBefore(),b.clearTimeout(f),f=b.setTimeout(function(){k.go()},l.delay),this},this.cache(),this.results(!0),this.stripe(),this.loader(!1),this.each(function(){a(this).on(l.bind,function(){j=a(this).val(),k.trigger()})})}}(jQuery,this,document); //# sourceMappingURL=jquery.quicksearch.min.js.map \ No newline at end of file diff --git a/dist/jquery.quicksearch.min.js.map b/dist/jquery.quicksearch.min.js.map index 5287eee..eb58e26 100644 --- a/dist/jquery.quicksearch.min.js.map +++ b/dist/jquery.quicksearch.min.js.map @@ -1 +1 @@ -{"version":3,"file":"dist/jquery.quicksearch.min.js","sources":["dist/jquery.quicksearch.js"],"names":["$","window","fn","quicksearch","target","opt","timeout","cache","rowcache","jq_results","val","e","this","options","extend","delay","selector","stripeRows","loader","noResults","bind","onBefore","onAfter","show","style","display","hide","prepareQuery","toLowerCase","split","testQuery","query","txt","i","length","indexOf","go","noresults","val_empty","replace","len","apply","results","stripe","joined","join","stripeRows_length","not","each","removeClass","addClass","strip_html","input","output","RegExp","trim","bool","t","find","map","innerHTML","trigger","clearTimeout","setTimeout","jQuery","document"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"dist/jquery.quicksearch.min.js","sources":["dist/jquery.quicksearch.js"],"names":["$","window","fn","quicksearch","target","opt","defaultDiacriticsRemovalMap","base","letters","this","removeDiacritics","str","changes","i","length","replace","timeout","cache","rowcache","jq_results","val","e","options","extend","delay","selector","stripeRows","loader","noResults","matchedResultsCount","bind","onBefore","onAfter","show","style","display","hide","prepareQuery","toLowerCase","split","testQuery","query","txt","indexOf","go","numMatchedRows","noresults","val_empty","len","apply","results","stripe","search","submittedVal","trigger","currentMatchedResults","joined","join","stripeRows_length","not","each","removeClass","addClass","strip_html","input","output","RegExp","trim","bool","noResultsEl","doRedraw","t","find","map","innerHTML","clearTimeout","setTimeout","on","jQuery","document"],"mappings":"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"} \ No newline at end of file From 38eb2f0ca1de0f445e1cd41ec893f7aa7faba275 Mon Sep 17 00:00:00 2001 From: Nicolas Brassard Date: Thu, 31 Oct 2013 14:11:21 -0400 Subject: [PATCH 11/58] Fixed bower --- bower.json | 38 +++++++++++++++++++++++++++----------- 1 file changed, 27 insertions(+), 11 deletions(-) diff --git a/bower.json b/bower.json index 741151f..af4c3df 100644 --- a/bower.json +++ b/bower.json @@ -1,17 +1,33 @@ { - "name": "quicksearch", - "version": "0.0.0", - "homepage": "https://github.com/rajibahmed/quicksearch", - "authors": [ - "riklomas" + "name": "jquery.quicksearch", + "title": "jQuery-QuickSearch", + "description": "A jQuery plugin for searching through tables, lists, etc quickly", + "version": "2.0.0", + "homepage": "", + "author": [ + { + "name": "Deux Huit Huit", + "url": "http://deuxhuithuit.com/" + }, + { + "name": "Rik Lomas", + "url": "http://www.riklomas.co.uk/" + } ], - "description": "A jQuery plugin for searching through tables, lists, etc quickly.", - "main": "jquery.quicksearch.js", - "keywords": [ - "search", - "filters" + "licenses": [ + { + "type": "MIT", + "url": "http://deuxhuithuit.mit-license.org/" + } ], - "license": "MIT", + "repository": { + "type": "git", + "url": "git://github.com/DeuxHuitHuit/quicksearch.git" + }, + "bugs": { + "url": "https://github.com/DeuxHuitHuit/quicksearch/issues" + }, + "keywords": ["quicksearch"], "ignore": [ "**/.*", "node_modules", From 1a0c919742952cbd2bd840a95c7a750cd375b81d Mon Sep 17 00:00:00 2001 From: Nicolas Brassard Date: Thu, 31 Oct 2013 14:18:55 -0400 Subject: [PATCH 12/58] Fixed the examples and made jquery version changeable via ?jquery= query string --- examples/index.html | 34 +- examples/jquery.js | 5999 ------------------------------------- examples/super_table.html | 36 +- 3 files changed, 60 insertions(+), 6009 deletions(-) delete mode 100644 examples/jquery.js diff --git a/examples/index.html b/examples/index.html index adfde93..62167db 100644 --- a/examples/index.html +++ b/examples/index.html @@ -5,10 +5,33 @@ quickSearch jQuery plug-in + - - - + - - + + + - + - - + + ``` @@ -65,6 +66,7 @@ $.ajax({ } }); ``` + ## Options * **delay** @@ -102,6 +104,8 @@ $.ajax({ - stripped text from 'selector' - element to be potentially hidden +### Callbacks +Functions are always `call`'d or `apply`'d, so except `this` to be the plugin object. For example: ```js @@ -112,12 +116,17 @@ $('input#search').quicksearch('table tbody tr', { 'loader': 'span.loading', 'noResults': 'tr#noresults', 'bind': 'keyup keydown', + 'minValLength': 2, + 'removeDiacritics': true, 'onBefore': function () { console.log('on before'); }, 'onAfter': function () { console.log('on after'); }, + 'onValTooSmall': function (val) { + console.log('value ' + val + ' is too small'); + }, 'show': function () { $(this).addClass('show'); }, From fef499f3c8eb238002421daf1dc3a5932fc3e953 Mon Sep 17 00:00:00 2001 From: Nicolas Brassard Date: Thu, 31 Oct 2013 15:37:45 -0400 Subject: [PATCH 25/58] Changed implementation of the result method --- src/jquery.quicksearch.js | 17 +++-------------- 1 file changed, 3 insertions(+), 14 deletions(-) diff --git a/src/jquery.quicksearch.js b/src/jquery.quicksearch.js index 59de3be..7fc178b 100644 --- a/src/jquery.quicksearch.js +++ b/src/jquery.quicksearch.js @@ -215,20 +215,9 @@ }; this.results = function (bool) { - - if (options.noResults) { - - var noResultsEl = options.noResults; - - if (typeof options.noResults === "string") { - noResultsEl = $(options.noResults); - } - - if (bool) { - noResultsEl.hide.call(this); - } else { - noResultsEl.show.call(this); - } + if (!!options.noResults) { + var noResultsEl = $(options.noResults); + noResultsEl[bool ? 'hide' : 'show'].call(this); } return this; From 8c44029e0c9f479ee9ea02a48069ff5b6754f030 Mon Sep 17 00:00:00 2001 From: Nicolas Brassard Date: Thu, 31 Oct 2013 15:38:06 -0400 Subject: [PATCH 26/58] New release --- dist/jquery.quicksearch.js | 69 ++++++++++++------------------ dist/jquery.quicksearch.min.js | 2 +- dist/jquery.quicksearch.min.js.map | 2 +- 3 files changed, 30 insertions(+), 43 deletions(-) diff --git a/dist/jquery.quicksearch.js b/dist/jquery.quicksearch.js index fb221a2..da2db5d 100644 --- a/dist/jquery.quicksearch.js +++ b/dist/jquery.quicksearch.js @@ -19,17 +19,15 @@ matchedResultsCount: 0, bind: 'keyup', removeDiacritics: false, - onBefore: function () { - return; - }, - onAfter: function () { - return; - }, + minValLength: 0, + onBefore: $.noop, + onAfter: $.noop, + onValTooSmall: $.noop, show: function () { - this.style.display = ""; + this.show(); }, hide: function () { - this.style.display = "none"; + this.hide(); }, prepareQuery: function (val) { return val.toLowerCase().split(' '); @@ -42,12 +40,8 @@ } return true; } - } - }; - - $.fn.quicksearch = function (target, opt) { - - var defaultDiacriticsRemovalMap = [ + }, + diacriticsRemovalMap: [ {'base':'A', 'letters':/[\u0041\u24B6\uFF21\u00C0\u00C1\u00C2\u1EA6\u1EA4\u1EAA\u1EA8\u00C3\u0100\u0102\u1EB0\u1EAE\u1EB4\u1EB2\u0226\u01E0\u00C4\u01DE\u1EA2\u00C5\u01FA\u01CD\u0200\u0202\u1EA0\u1EAC\u1EB6\u1E00\u0104\u023A\u2C6F]/g}, {'base':'AA','letters':/[\uA732]/g}, {'base':'AE','letters':/[\u00C6\u01FC\u01E2]/g}, @@ -132,10 +126,13 @@ {'base':'x','letters':/[\u0078\u24E7\uFF58\u1E8B\u1E8D]/g}, {'base':'y','letters':/[\u0079\u24E8\uFF59\u1EF3\u00FD\u0177\u1EF9\u0233\u1E8F\u00FF\u1EF7\u1E99\u1EF5\u01B4\u024F\u1EFF]/g}, {'base':'z','letters':/[\u007A\u24E9\uFF5A\u017A\u1E91\u017C\u017E\u1E93\u1E95\u01B6\u0225\u0240\u2C6C\uA763]/g} - ]; + ] + }; + + $.fn.quicksearch = function (target, opt) { this.removeDiacritics = function(str) { - var changes = defaultDiacriticsRemovalMap; + var changes = $.quicksearch.diacriticsRemovalMap; for(var i=0; ib;b++)f||l.testQuery(a,g[b],h[b])?(l.show.apply(h[b]),e=!1,d++):l.hide.apply(h[b]);return e?this.results(!1):(this.results(!0),this.stripe()),this.matchedResultsCount=d,this.loader(!1),l.onAfter(),this},this.search=function(a){j=a,k.trigger()},this.currentMatchedResults=function(){return this.matchedResultsCount},this.stripe=function(){if("object"==typeof l.stripeRows&&null!==l.stripeRows){var b=l.stripeRows.join(" "),c=l.stripeRows.length;i.not(":hidden").each(function(d){a(this).removeClass(b).addClass(l.stripeRows[d%c])})}return this},this.strip_html=function(b){var c=b.replace(new RegExp("<[^<]+\\>","g"),"");return c=a.trim(c.toLowerCase())},this.results=function(b){if(l.noResults){var c=l.noResults;"string"==typeof l.noResults&&(c=a(l.noResults)),b?c.hide():c.show()}return this},this.loader=function(b){return"string"==typeof l.loader&&""!==l.loader&&(b?a(l.loader).show():a(l.loader).hide()),this},this.cache=function(b){b="undefined"==typeof b?!0:b,i=l.noResults?a(c).not(l.noResults):a(c);var d="string"==typeof l.selector?i.find(l.selector):a(c).not(l.noResults);return g=d.map(function(){return k.removeDiacritics(k.strip_html(this.innerHTML))}),h=i.map(function(){return this}),j=j||this.val()||"",b&&this.go(),this},this.trigger=function(){return this.loader(!0),l.onBefore(),b.clearTimeout(f),f=b.setTimeout(function(){k.go()},l.delay),this},this.cache(),this.results(!0),this.stripe(),this.loader(!1),this.each(function(){a(this).on(l.bind,function(){j=a(this).val(),k.trigger()})})}}(jQuery,this,document); +!function(a,b){"use strict";a.quicksearch={defaults:{delay:100,selector:null,stripeRows:null,loader:null,noResults:"",matchedResultsCount:0,bind:"keyup",removeDiacritics:!1,minValLength:0,onBefore:a.noop,onAfter:a.noop,onValTooSmall:a.noop,show:function(){this.show()},hide:function(){this.hide()},prepareQuery:function(a){return a.toLowerCase().split(" ")},testQuery:function(a,b){for(var c=0;cb;b++)h||k.testQuery(a,f[b],g[b])?(k.show.apply(g[b]),e=!1,d++):k.hide.apply(g[b]);return e?this.results(!1):(this.results(!0),this.stripe()),this.matchedResultsCount=d,this.loader(!1),k.onAfter.call(this),this},this.search=function(a){i=a,j.trigger()},this.currentMatchedResults=function(){return this.matchedResultsCount},this.stripe=function(){if("object"==typeof k.stripeRows&&null!==k.stripeRows){var b=k.stripeRows.join(" "),c=k.stripeRows.length;h.not(":hidden").each(function(d){a(this).removeClass(b).addClass(k.stripeRows[d%c])})}return this},this.strip_html=function(b){var c=b.replace(new RegExp("<[^<]+\\>","g"),"");return c=a.trim(c.toLowerCase())},this.results=function(b){if(k.noResults){var c=a(k.noResults);c[b?"hide":"show"].call(this)}return this},this.loader=function(b){return"string"==typeof k.loader&&""!==k.loader&&(b?a(k.loader).show.call(this):a(k.loader).hide.call(this)),this},this.cache=function(b){b="undefined"==typeof b?!0:b,h=k.noResults?a(c).not(k.noResults):a(c);var d="string"==typeof k.selector?h.find(k.selector):a(c).not(k.noResults);return f=d.map(function(){var a=j.strip_html(this.innerHTML);return k.removeDiacritics?j.removeDiacritics(a):a}),g=h.map(function(){return this}),i=i||this.val()||"",b&&this.go(),this},this.trigger=function(){return i.length Date: Thu, 31 Oct 2013 15:43:08 -0400 Subject: [PATCH 27/58] Fixed some wrong assumptions with find/replaceAll... --- src/jquery.quicksearch.js | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/jquery.quicksearch.js b/src/jquery.quicksearch.js index 7fc178b..348acb6 100644 --- a/src/jquery.quicksearch.js +++ b/src/jquery.quicksearch.js @@ -21,10 +21,10 @@ onAfter: $.noop, onValTooSmall: $.noop, show: function () { - this.show(); + $(this).show(); }, hide: function () { - this.hide(); + $(this).hide(); }, prepareQuery: function (val) { return val.toLowerCase().split(' '); @@ -217,7 +217,7 @@ this.results = function (bool) { if (!!options.noResults) { var noResultsEl = $(options.noResults); - noResultsEl[bool ? 'hide' : 'show'].call(this); + noResultsEl[bool ? 'hide' : 'show'](); } return this; @@ -226,9 +226,9 @@ this.loader = function (bool) { if (typeof options.loader === "string" && options.loader !== "") { if (bool) { - $(options.loader).show.call(this); + $(options.loader).show(); } else { - $(options.loader).hide.call(this); + $(options.loader).hide(); } } return this; From 02f789e349327ba3d4d02225a2b41a9286d16522 Mon Sep 17 00:00:00 2001 From: Nicolas Brassard Date: Thu, 31 Oct 2013 15:43:16 -0400 Subject: [PATCH 28/58] New release --- dist/jquery.quicksearch.js | 10 +++++----- dist/jquery.quicksearch.min.js | 2 +- dist/jquery.quicksearch.min.js.map | 2 +- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/dist/jquery.quicksearch.js b/dist/jquery.quicksearch.js index da2db5d..f44154a 100644 --- a/dist/jquery.quicksearch.js +++ b/dist/jquery.quicksearch.js @@ -24,10 +24,10 @@ onAfter: $.noop, onValTooSmall: $.noop, show: function () { - this.show(); + $(this).show(); }, hide: function () { - this.hide(); + $(this).hide(); }, prepareQuery: function (val) { return val.toLowerCase().split(' '); @@ -220,7 +220,7 @@ this.results = function (bool) { if (!!options.noResults) { var noResultsEl = $(options.noResults); - noResultsEl[bool ? 'hide' : 'show'].call(this); + noResultsEl[bool ? 'hide' : 'show'](); } return this; @@ -229,9 +229,9 @@ this.loader = function (bool) { if (typeof options.loader === "string" && options.loader !== "") { if (bool) { - $(options.loader).show.call(this); + $(options.loader).show(); } else { - $(options.loader).hide.call(this); + $(options.loader).hide(); } } return this; diff --git a/dist/jquery.quicksearch.min.js b/dist/jquery.quicksearch.min.js index 376dae6..274dcaa 100644 --- a/dist/jquery.quicksearch.min.js +++ b/dist/jquery.quicksearch.min.js @@ -1,5 +1,5 @@ /*! jQuery-QuickSearch - v2.0.1 - 2013-10-31 * Copyright (c) 2013 Deux Huit Huit (http://deuxhuithuit.com/); * Licensed MIT http://deuxhuithuit.mit-license.org */ -!function(a,b){"use strict";a.quicksearch={defaults:{delay:100,selector:null,stripeRows:null,loader:null,noResults:"",matchedResultsCount:0,bind:"keyup",removeDiacritics:!1,minValLength:0,onBefore:a.noop,onAfter:a.noop,onValTooSmall:a.noop,show:function(){this.show()},hide:function(){this.hide()},prepareQuery:function(a){return a.toLowerCase().split(" ")},testQuery:function(a,b){for(var c=0;cb;b++)h||k.testQuery(a,f[b],g[b])?(k.show.apply(g[b]),e=!1,d++):k.hide.apply(g[b]);return e?this.results(!1):(this.results(!0),this.stripe()),this.matchedResultsCount=d,this.loader(!1),k.onAfter.call(this),this},this.search=function(a){i=a,j.trigger()},this.currentMatchedResults=function(){return this.matchedResultsCount},this.stripe=function(){if("object"==typeof k.stripeRows&&null!==k.stripeRows){var b=k.stripeRows.join(" "),c=k.stripeRows.length;h.not(":hidden").each(function(d){a(this).removeClass(b).addClass(k.stripeRows[d%c])})}return this},this.strip_html=function(b){var c=b.replace(new RegExp("<[^<]+\\>","g"),"");return c=a.trim(c.toLowerCase())},this.results=function(b){if(k.noResults){var c=a(k.noResults);c[b?"hide":"show"].call(this)}return this},this.loader=function(b){return"string"==typeof k.loader&&""!==k.loader&&(b?a(k.loader).show.call(this):a(k.loader).hide.call(this)),this},this.cache=function(b){b="undefined"==typeof b?!0:b,h=k.noResults?a(c).not(k.noResults):a(c);var d="string"==typeof k.selector?h.find(k.selector):a(c).not(k.noResults);return f=d.map(function(){var a=j.strip_html(this.innerHTML);return k.removeDiacritics?j.removeDiacritics(a):a}),g=h.map(function(){return this}),i=i||this.val()||"",b&&this.go(),this},this.trigger=function(){return i.lengthb;b++)h||k.testQuery(a,f[b],g[b])?(k.show.apply(g[b]),e=!1,d++):k.hide.apply(g[b]);return e?this.results(!1):(this.results(!0),this.stripe()),this.matchedResultsCount=d,this.loader(!1),k.onAfter.call(this),this},this.search=function(a){i=a,j.trigger()},this.currentMatchedResults=function(){return this.matchedResultsCount},this.stripe=function(){if("object"==typeof k.stripeRows&&null!==k.stripeRows){var b=k.stripeRows.join(" "),c=k.stripeRows.length;h.not(":hidden").each(function(d){a(this).removeClass(b).addClass(k.stripeRows[d%c])})}return this},this.strip_html=function(b){var c=b.replace(new RegExp("<[^<]+\\>","g"),"");return c=a.trim(c.toLowerCase())},this.results=function(b){if(k.noResults){var c=a(k.noResults);c[b?"hide":"show"]()}return this},this.loader=function(b){return"string"==typeof k.loader&&""!==k.loader&&(b?a(k.loader).show():a(k.loader).hide()),this},this.cache=function(b){b="undefined"==typeof b?!0:b,h=k.noResults?a(c).not(k.noResults):a(c);var d="string"==typeof k.selector?h.find(k.selector):a(c).not(k.noResults);return f=d.map(function(){var a=j.strip_html(this.innerHTML);return k.removeDiacritics?j.removeDiacritics(a):a}),g=h.map(function(){return this}),i=i||this.val()||"",b&&this.go(),this},this.trigger=function(){return i.length Date: Thu, 31 Oct 2013 16:04:36 -0400 Subject: [PATCH 29/58] Make sure the results are reseted if the value is too small --- examples/super_table.html | 3 ++- src/jquery.quicksearch.js | 26 +++++++++++++------------- 2 files changed, 15 insertions(+), 14 deletions(-) diff --git a/examples/super_table.html b/examples/super_table.html index daa307b..38deb72 100644 --- a/examples/super_table.html +++ b/examples/super_table.html @@ -33,7 +33,8 @@ $("#id_search").quicksearch("table tbody tr", { noResults: '#noresults', stripeRows: ['odd', 'even'], - loader: 'span.loading' + loader: 'span.loading', + minValLength: 2 }); }); diff --git a/src/jquery.quicksearch.js b/src/jquery.quicksearch.js index 348acb6..d49e787 100644 --- a/src/jquery.quicksearch.js +++ b/src/jquery.quicksearch.js @@ -139,6 +139,10 @@ var timeout, cache, rowcache, jq_results, val = '', self = this, options = $.extend($.quicksearch.defaults, opt); + + // Assure selectors + options.noResults = !options.noResults ? $() : $(options.noResults); + options.loader = !options.loader ? $() : $(options.loader); this.go = function () { @@ -215,22 +219,18 @@ }; this.results = function (bool) { - if (!!options.noResults) { - var noResultsEl = $(options.noResults); - noResultsEl[bool ? 'hide' : 'show'](); + if (!!options.noResults.length) { + options.noResults[bool ? 'hide' : 'show'](); } return this; }; this.loader = function (bool) { - if (typeof options.loader === "string" && options.loader !== "") { - if (bool) { - $(options.loader).show(); - } else { - $(options.loader).hide(); - } + if (!!options.loader.length) { + options.loader[bool ? 'show' : 'hide'](); } + return this; }; @@ -267,12 +267,12 @@ this.trigger = function () { if (val.length < options.minValLength) { options.onValTooSmall.call(this, val); - return; + self.go(); + } else { + this.loader(true); + options.onBefore.call(this); } - this.loader(true); - options.onBefore.call(this); - window.clearTimeout(timeout); timeout = window.setTimeout(function () { self.go(); From 352c67f978c5a580482166ee5ef64cd96d2596be Mon Sep 17 00:00:00 2001 From: Nicolas Brassard Date: Thu, 31 Oct 2013 16:04:49 -0400 Subject: [PATCH 30/58] New release --- dist/jquery.quicksearch.js | 26 +++++++++++++------------- dist/jquery.quicksearch.min.js | 2 +- dist/jquery.quicksearch.min.js.map | 2 +- 3 files changed, 15 insertions(+), 15 deletions(-) diff --git a/dist/jquery.quicksearch.js b/dist/jquery.quicksearch.js index f44154a..683f253 100644 --- a/dist/jquery.quicksearch.js +++ b/dist/jquery.quicksearch.js @@ -142,6 +142,10 @@ var timeout, cache, rowcache, jq_results, val = '', self = this, options = $.extend($.quicksearch.defaults, opt); + + // Assure selectors + options.noResults = !options.noResults ? $() : $(options.noResults); + options.loader = !options.loader ? $() : $(options.loader); this.go = function () { @@ -218,22 +222,18 @@ }; this.results = function (bool) { - if (!!options.noResults) { - var noResultsEl = $(options.noResults); - noResultsEl[bool ? 'hide' : 'show'](); + if (!!options.noResults.length) { + options.noResults[bool ? 'hide' : 'show'](); } return this; }; this.loader = function (bool) { - if (typeof options.loader === "string" && options.loader !== "") { - if (bool) { - $(options.loader).show(); - } else { - $(options.loader).hide(); - } + if (!!options.loader.length) { + options.loader[bool ? 'show' : 'hide'](); } + return this; }; @@ -270,12 +270,12 @@ this.trigger = function () { if (val.length < options.minValLength) { options.onValTooSmall.call(this, val); - return; + self.go(); + } else { + this.loader(true); + options.onBefore.call(this); } - this.loader(true); - options.onBefore.call(this); - window.clearTimeout(timeout); timeout = window.setTimeout(function () { self.go(); diff --git a/dist/jquery.quicksearch.min.js b/dist/jquery.quicksearch.min.js index 274dcaa..d8330d5 100644 --- a/dist/jquery.quicksearch.min.js +++ b/dist/jquery.quicksearch.min.js @@ -1,5 +1,5 @@ /*! jQuery-QuickSearch - v2.0.1 - 2013-10-31 * Copyright (c) 2013 Deux Huit Huit (http://deuxhuithuit.com/); * Licensed MIT http://deuxhuithuit.mit-license.org */ -!function(a,b){"use strict";a.quicksearch={defaults:{delay:100,selector:null,stripeRows:null,loader:null,noResults:"",matchedResultsCount:0,bind:"keyup",removeDiacritics:!1,minValLength:0,onBefore:a.noop,onAfter:a.noop,onValTooSmall:a.noop,show:function(){a(this).show()},hide:function(){a(this).hide()},prepareQuery:function(a){return a.toLowerCase().split(" ")},testQuery:function(a,b){for(var c=0;cb;b++)h||k.testQuery(a,f[b],g[b])?(k.show.apply(g[b]),e=!1,d++):k.hide.apply(g[b]);return e?this.results(!1):(this.results(!0),this.stripe()),this.matchedResultsCount=d,this.loader(!1),k.onAfter.call(this),this},this.search=function(a){i=a,j.trigger()},this.currentMatchedResults=function(){return this.matchedResultsCount},this.stripe=function(){if("object"==typeof k.stripeRows&&null!==k.stripeRows){var b=k.stripeRows.join(" "),c=k.stripeRows.length;h.not(":hidden").each(function(d){a(this).removeClass(b).addClass(k.stripeRows[d%c])})}return this},this.strip_html=function(b){var c=b.replace(new RegExp("<[^<]+\\>","g"),"");return c=a.trim(c.toLowerCase())},this.results=function(b){if(k.noResults){var c=a(k.noResults);c[b?"hide":"show"]()}return this},this.loader=function(b){return"string"==typeof k.loader&&""!==k.loader&&(b?a(k.loader).show():a(k.loader).hide()),this},this.cache=function(b){b="undefined"==typeof b?!0:b,h=k.noResults?a(c).not(k.noResults):a(c);var d="string"==typeof k.selector?h.find(k.selector):a(c).not(k.noResults);return f=d.map(function(){var a=j.strip_html(this.innerHTML);return k.removeDiacritics?j.removeDiacritics(a):a}),g=h.map(function(){return this}),i=i||this.val()||"",b&&this.go(),this},this.trigger=function(){return i.lengthb;b++)h||k.testQuery(a,f[b],g[b])?(k.show.apply(g[b]),e=!1,d++):k.hide.apply(g[b]);return e?this.results(!1):(this.results(!0),this.stripe()),this.matchedResultsCount=d,this.loader(!1),k.onAfter.call(this),this},this.search=function(a){i=a,j.trigger()},this.currentMatchedResults=function(){return this.matchedResultsCount},this.stripe=function(){if("object"==typeof k.stripeRows&&null!==k.stripeRows){var b=k.stripeRows.join(" "),c=k.stripeRows.length;h.not(":hidden").each(function(d){a(this).removeClass(b).addClass(k.stripeRows[d%c])})}return this},this.strip_html=function(b){var c=b.replace(new RegExp("<[^<]+\\>","g"),"");return c=a.trim(c.toLowerCase())},this.results=function(a){return k.noResults.length&&k.noResults[a?"hide":"show"](),this},this.loader=function(a){return k.loader.length&&k.loader[a?"show":"hide"](),this},this.cache=function(b){b="undefined"==typeof b?!0:b,h=k.noResults?a(c).not(k.noResults):a(c);var d="string"==typeof k.selector?h.find(k.selector):a(c).not(k.noResults);return f=d.map(function(){var a=j.strip_html(this.innerHTML);return k.removeDiacritics?j.removeDiacritics(a):a}),g=h.map(function(){return this}),i=i||this.val()||"",b&&this.go(),this},this.trigger=function(){return i.length Date: Thu, 31 Oct 2013 16:57:29 -0400 Subject: [PATCH 31/58] Fixing source maps path errors --- Gruntfile.js | 22 +++++++++++++++++++--- dist/jquery.quicksearch.min.js.map | 2 +- 2 files changed, 20 insertions(+), 4 deletions(-) diff --git a/Gruntfile.js b/Gruntfile.js index 34aa965..14354f3 100644 --- a/Gruntfile.js +++ b/Gruntfile.js @@ -79,6 +79,7 @@ module.exports = function(grunt) { report: 'gzip', sourceMap: 'dist/<%= pkg.name %>.min.js.map', sourceMappingURL: '<%= pkg.name %>.min.js.map', + sourceMapRoot: '../', mangle: true, compress: { global_defs: { @@ -104,10 +105,25 @@ module.exports = function(grunt) { } } }); - - // Default task. + // fix source map url + grunt.registerTask('fix-source-map', 'Fix the wrong file path in the source map', function() { + var sourceMapPath = grunt.template.process('<%= uglify.options.sourceMap %>'); + var sourceMapUrl = grunt.template.process('<%= uglify.options.sourceMappingURL %>'); + var diff = sourceMapPath.replace(sourceMapUrl, ''); + var sourceMap = grunt.file.readJSON(sourceMapPath); + sourceMap.file = sourceMap.file.replace(diff, ''); + var newSources = []; + sourceMap.sources.forEach(function (elem) { + newSources.push(elem.replace(diff, '')); + }); + sourceMap.sources = newSources; + grunt.log.write(sourceMap.sources); + grunt.file.write(sourceMapPath, JSON.stringify(sourceMap)); + }); + + // Default tasks. grunt.registerTask('dev', ['jshint','complexity']); - grunt.registerTask('build', ['concat','uglify']); + grunt.registerTask('build', ['concat','uglify','fix-source-map']); grunt.registerTask('default', ['dev','build']); }; \ No newline at end of file diff --git a/dist/jquery.quicksearch.min.js.map b/dist/jquery.quicksearch.min.js.map index 46e8042..88e0dd0 100644 --- a/dist/jquery.quicksearch.min.js.map +++ b/dist/jquery.quicksearch.min.js.map @@ -1 +1 @@ -{"version":3,"file":"dist/jquery.quicksearch.min.js","sources":["dist/jquery.quicksearch.js"],"names":["$","window","quicksearch","defaults","delay","selector","stripeRows","loader","noResults","matchedResultsCount","bind","removeDiacritics","minValLength","onBefore","noop","onAfter","onValTooSmall","show","this","hide","prepareQuery","val","toLowerCase","split","testQuery","query","txt","i","length","indexOf","diacriticsRemovalMap","base","letters","fn","target","opt","str","changes","replace","timeout","cache","rowcache","jq_results","self","options","extend","go","len","numMatchedRows","noresults","val_empty","apply","results","stripe","call","search","submittedVal","trigger","currentMatchedResults","joined","join","stripeRows_length","not","each","removeClass","addClass","strip_html","input","output","RegExp","trim","bool","doRedraw","t","find","map","temp","innerHTML","clearTimeout","setTimeout","on","jQuery","document"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"jquery.quicksearch.min.js","sources":["jquery.quicksearch.js"],"names":["$","window","quicksearch","defaults","delay","selector","stripeRows","loader","noResults","matchedResultsCount","bind","removeDiacritics","minValLength","onBefore","noop","onAfter","onValTooSmall","show","this","hide","prepareQuery","val","toLowerCase","split","testQuery","query","txt","i","length","indexOf","diacriticsRemovalMap","base","letters","fn","target","opt","str","changes","replace","timeout","cache","rowcache","jq_results","self","options","extend","go","len","numMatchedRows","noresults","val_empty","apply","results","stripe","call","search","submittedVal","trigger","currentMatchedResults","joined","join","stripeRows_length","not","each","removeClass","addClass","strip_html","input","output","RegExp","trim","bool","doRedraw","t","find","map","temp","innerHTML","clearTimeout","setTimeout","on","jQuery","document"],"mappings":"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","sourceRoot":"../"} \ No newline at end of file From 5692de9a6d202e06f80907497d5b00f96bd5b5b3 Mon Sep 17 00:00:00 2001 From: Nicolas Brassard Date: Fri, 15 Nov 2013 14:05:42 -0500 Subject: [PATCH 32/58] As per #3, made the plugin listen to the search event as well --- README.md | 15 +++++++++++---- examples/style.css | 1 + examples/super_table.html | 2 +- src/jquery.quicksearch.js | 2 +- 4 files changed, 14 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index 281f0be..f7f0bd4 100644 --- a/README.md +++ b/README.md @@ -5,10 +5,15 @@ A [jQuery][jquery_site] based plug-in for filtering large data sets with user in This is an improved fork of the original work of riklomas . This plugin is now maintained by [@DeuxHuitHuit](http://deuxhuithuit.com) +## Project pages + +* +* + ## Examples -* -* +* +* ## Usage @@ -80,7 +85,7 @@ $.ajax({ * **noResults** A query selector to show if there's no results for the search * **bind** - Event that the trigger is tied to + Event that the trigger is tied to. Defaults to 'keyup search' * **removeDiacritics** Remove diacritics from the search input. Defaults to false. * **minValLength** @@ -162,7 +167,8 @@ Under the same licenses as the jQuery library itself: [twitter_follow]: http://twitter.com/riklomas [thelizardreborn]: http://github.com/thelizardreborn [goj]: http://github.com/goj +[288]: http://deuxhuithuit.com/ diff --git a/examples/style.css b/examples/style.css index ceae436..b0d4a61 100644 --- a/examples/style.css +++ b/examples/style.css @@ -34,3 +34,4 @@ form input { font-size: 16px;} .github { font-size: 150%; font-weight: bold; } .github a { background: #fff172; padding: 3px 10px;} +#id_search {width: 300px;} \ No newline at end of file diff --git a/examples/super_table.html b/examples/super_table.html index 38deb72..99ca473 100644 --- a/examples/super_table.html +++ b/examples/super_table.html @@ -45,7 +45,7 @@
    - Loading... + Loading...
    diff --git a/src/jquery.quicksearch.js b/src/jquery.quicksearch.js index d49e787..0a1494b 100644 --- a/src/jquery.quicksearch.js +++ b/src/jquery.quicksearch.js @@ -14,7 +14,7 @@ loader: null, noResults: '', matchedResultsCount: 0, - bind: 'keyup', + bind: 'keyup search', removeDiacritics: false, minValLength: 0, onBefore: $.noop, From e46acabda4d70d13e0a65d6fdea960fc601bd6fd Mon Sep 17 00:00:00 2001 From: Nicolas Brassard Date: Fri, 15 Nov 2013 14:06:11 -0500 Subject: [PATCH 33/58] Version bump --- bower.json | 2 +- jquery.quicksearch.jquery.json | 2 +- package.json | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/bower.json b/bower.json index 1981b21..26259e4 100644 --- a/bower.json +++ b/bower.json @@ -2,7 +2,7 @@ "name": "jquery.quicksearch", "title": "jQuery-QuickSearch", "description": "A jQuery plugin for searching through tables, lists, etc quickly", - "version": "2.0.1", + "version": "2.0.2", "homepage": "", "author": [ { diff --git a/jquery.quicksearch.jquery.json b/jquery.quicksearch.jquery.json index eaac6d4..25e6a74 100644 --- a/jquery.quicksearch.jquery.json +++ b/jquery.quicksearch.jquery.json @@ -2,7 +2,7 @@ "name": "jquery.quicksearch", "title": "jQuery-QuickSearch", "description": "A jQuery plugin for searching through tables, lists, etc quickly", - "version": "2.0.1", + "version": "2.0.2", "homepage": "", "author": { "name": "Deux Huit Huit", diff --git a/package.json b/package.json index 9c2baae..138c9d4 100644 --- a/package.json +++ b/package.json @@ -2,7 +2,7 @@ "name": "jquery.quicksearch", "title": "jQuery-QuickSearch", "description": "A jQuery plugin for searching through tables, lists, etc quickly", - "version": "2.0.1", + "version": "2.0.2", "homepage": "", "author": [ { From 2e6a74b1204b5b4c80e2136d2d5f2282c11afae4 Mon Sep 17 00:00:00 2001 From: Nicolas Brassard Date: Fri, 15 Nov 2013 14:11:35 -0500 Subject: [PATCH 34/58] Clean up --- README.md | 17 ++++------------- 1 file changed, 4 insertions(+), 13 deletions(-) diff --git a/README.md b/README.md index f7f0bd4..3f52c20 100644 --- a/README.md +++ b/README.md @@ -3,7 +3,7 @@ A [jQuery][jquery_site] based plug-in for filtering large data sets with user input This is an improved fork of the original work of riklomas . -This plugin is now maintained by [@DeuxHuitHuit](http://deuxhuithuit.com) +This plugin is now maintained by [@DeuxHuitHuit][288] ## Project pages @@ -156,14 +156,11 @@ If you have a bug fix, the best way to help would be to: * Click "pull request" at the top of my Github page I can't promise to answer every question about quicksearch, -but please do [report bugs here][issues] or [send me a message on Github][mail_me]. - -You can [watch quicksearch][github_watch] for updates or [follow me on Github][github_follow] -and [on Twitter][twitter_follow]. +but please do [report bugs here][issues]. ## License -Under the same licenses as the jQuery library itself: +Now licensed under the MIT License: ## Credits @@ -172,16 +169,10 @@ It is now maintain by [Deux Huit Huit][288] Thanks to [Seth F.][thelizardreborn] for fixes and [Krzysiek Goj][goj] for the testQuery and prepareQuery option updates -Now licensed under the MIT License: - [jquery_site]: http://www.jquery.com [rik_site]: http://www.riklomas.co.uk [lomalogue_site]: http://www.lomalogue.com -[issues]: http://github.com/riklomas/quicksearch/issues -[mail_me]: http://github.com/inbox/new/riklomas -[github_watch]: http://github.com/riklomas/quicksearch/toggle_watch -[github_follow]: http://github.com/users/follow?target=riklomas -[twitter_follow]: http://twitter.com/riklomas +[issues]: http://github.com/deuxhuithuit/quicksearch/issues [thelizardreborn]: http://github.com/thelizardreborn [goj]: http://github.com/goj [288]: http://deuxhuithuit.com/ From 54ba60ccd12e1ffea7df9f6e660dc30a8f90fb62 Mon Sep 17 00:00:00 2001 From: Nicolas Brassard Date: Fri, 15 Nov 2013 14:12:11 -0500 Subject: [PATCH 35/58] Version 2.0.2 --- dist/jquery.quicksearch.js | 4 ++-- dist/jquery.quicksearch.min.js | 4 ++-- dist/jquery.quicksearch.min.js.map | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/dist/jquery.quicksearch.js b/dist/jquery.quicksearch.js index 683f253..bce60b0 100644 --- a/dist/jquery.quicksearch.js +++ b/dist/jquery.quicksearch.js @@ -1,4 +1,4 @@ -/*! jQuery-QuickSearch - v2.0.1 - 2013-10-31 +/*! jQuery-QuickSearch - v2.0.2 - 2013-11-15 * Copyright (c) 2013 Deux Huit Huit (http://deuxhuithuit.com/); * Licensed MIT http://deuxhuithuit.mit-license.org */ /** @@ -17,7 +17,7 @@ loader: null, noResults: '', matchedResultsCount: 0, - bind: 'keyup', + bind: 'keyup search', removeDiacritics: false, minValLength: 0, onBefore: $.noop, diff --git a/dist/jquery.quicksearch.min.js b/dist/jquery.quicksearch.min.js index d8330d5..6150850 100644 --- a/dist/jquery.quicksearch.min.js +++ b/dist/jquery.quicksearch.min.js @@ -1,5 +1,5 @@ -/*! jQuery-QuickSearch - v2.0.1 - 2013-10-31 +/*! jQuery-QuickSearch - v2.0.2 - 2013-11-15 * Copyright (c) 2013 Deux Huit Huit (http://deuxhuithuit.com/); * Licensed MIT http://deuxhuithuit.mit-license.org */ -!function(a,b){"use strict";a.quicksearch={defaults:{delay:100,selector:null,stripeRows:null,loader:null,noResults:"",matchedResultsCount:0,bind:"keyup",removeDiacritics:!1,minValLength:0,onBefore:a.noop,onAfter:a.noop,onValTooSmall:a.noop,show:function(){a(this).show()},hide:function(){a(this).hide()},prepareQuery:function(a){return a.toLowerCase().split(" ")},testQuery:function(a,b){for(var c=0;cb;b++)h||k.testQuery(a,f[b],g[b])?(k.show.apply(g[b]),e=!1,d++):k.hide.apply(g[b]);return e?this.results(!1):(this.results(!0),this.stripe()),this.matchedResultsCount=d,this.loader(!1),k.onAfter.call(this),this},this.search=function(a){i=a,j.trigger()},this.currentMatchedResults=function(){return this.matchedResultsCount},this.stripe=function(){if("object"==typeof k.stripeRows&&null!==k.stripeRows){var b=k.stripeRows.join(" "),c=k.stripeRows.length;h.not(":hidden").each(function(d){a(this).removeClass(b).addClass(k.stripeRows[d%c])})}return this},this.strip_html=function(b){var c=b.replace(new RegExp("<[^<]+\\>","g"),"");return c=a.trim(c.toLowerCase())},this.results=function(a){return k.noResults.length&&k.noResults[a?"hide":"show"](),this},this.loader=function(a){return k.loader.length&&k.loader[a?"show":"hide"](),this},this.cache=function(b){b="undefined"==typeof b?!0:b,h=k.noResults?a(c).not(k.noResults):a(c);var d="string"==typeof k.selector?h.find(k.selector):a(c).not(k.noResults);return f=d.map(function(){var a=j.strip_html(this.innerHTML);return k.removeDiacritics?j.removeDiacritics(a):a}),g=h.map(function(){return this}),i=i||this.val()||"",b&&this.go(),this},this.trigger=function(){return i.lengthb;b++)h||k.testQuery(a,f[b],g[b])?(k.show.apply(g[b]),e=!1,d++):k.hide.apply(g[b]);return e?this.results(!1):(this.results(!0),this.stripe()),this.matchedResultsCount=d,this.loader(!1),k.onAfter.call(this),this},this.search=function(a){i=a,j.trigger()},this.currentMatchedResults=function(){return this.matchedResultsCount},this.stripe=function(){if("object"==typeof k.stripeRows&&null!==k.stripeRows){var b=k.stripeRows.join(" "),c=k.stripeRows.length;h.not(":hidden").each(function(d){a(this).removeClass(b).addClass(k.stripeRows[d%c])})}return this},this.strip_html=function(b){var c=b.replace(new RegExp("<[^<]+\\>","g"),"");return c=a.trim(c.toLowerCase())},this.results=function(a){return k.noResults.length&&k.noResults[a?"hide":"show"](),this},this.loader=function(a){return k.loader.length&&k.loader[a?"show":"hide"](),this},this.cache=function(b){b="undefined"==typeof b?!0:b,h=k.noResults?a(c).not(k.noResults):a(c);var d="string"==typeof k.selector?h.find(k.selector):a(c).not(k.noResults);return f=d.map(function(){var a=j.strip_html(this.innerHTML);return k.removeDiacritics?j.removeDiacritics(a):a}),g=h.map(function(){return this}),i=i||this.val()||"",b&&this.go(),this},this.trigger=function(){return i.length Date: Tue, 19 Nov 2013 00:13:12 -0500 Subject: [PATCH 36/58] Added some bower keywords --- bower.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bower.json b/bower.json index 26259e4..784b540 100644 --- a/bower.json +++ b/bower.json @@ -27,7 +27,7 @@ "bugs": { "url": "https://github.com/DeuxHuitHuit/quicksearch/issues" }, - "keywords": ["quicksearch"], + "keywords": ["quicksearch","search","filter"], "ignore": [ "**/.*", "node_modules", From 503f3d3f799166773e9d4781acdf2950b06298f2 Mon Sep 17 00:00:00 2001 From: nitriques Date: Tue, 19 Nov 2013 00:20:05 -0500 Subject: [PATCH 37/58] Added deps --- bower.json | 3 +++ 1 file changed, 3 insertions(+) diff --git a/bower.json b/bower.json index 784b540..b60fc75 100644 --- a/bower.json +++ b/bower.json @@ -28,6 +28,9 @@ "url": "https://github.com/DeuxHuitHuit/quicksearch/issues" }, "keywords": ["quicksearch","search","filter"], + "dependencies":{ + "jquery":">=1.8" + }, "ignore": [ "**/.*", "node_modules", From 8b20fe4399d921398ba6b98753de710a50bcc63e Mon Sep 17 00:00:00 2001 From: beaubbe Date: Fri, 29 Nov 2013 17:42:52 -0500 Subject: [PATCH 38/58] Fixed general behaviour - Fixed minValLength, - added reset Method with bind options - this.go will only be called once when val < minValLength - general search behaviour when val < minValLength and val < last_val (erasing characters) --- src/jquery.quicksearch.js | 43 +++++++++++++++++++++++++++++++-------- 1 file changed, 35 insertions(+), 8 deletions(-) diff --git a/src/jquery.quicksearch.js b/src/jquery.quicksearch.js index 0a1494b..0114f72 100644 --- a/src/jquery.quicksearch.js +++ b/src/jquery.quicksearch.js @@ -1,3 +1,6 @@ +/*! jQuery-QuickSearch - v2.0.2 - 2013-11-15 +* Copyright (c) 2013 Deux Huit Huit (http://deuxhuithuit.com/); +* Licensed MIT http://deuxhuithuit.mit-license.org */ /** * Copyrights: Deux Huit Huit, Rik Lomas. * Licensed MIT: http://deuxhuithuit.mit-license.org @@ -15,6 +18,7 @@ noResults: '', matchedResultsCount: 0, bind: 'keyup search', + resetBind: 'reset', removeDiacritics: false, minValLength: 0, onBefore: $.noop, @@ -136,7 +140,7 @@ return str; }; - var timeout, cache, rowcache, jq_results, val = '', + var timeout, cache, rowcache, jq_results, val = '', last_val = '', self = this, options = $.extend($.quicksearch.defaults, opt); @@ -160,7 +164,11 @@ query = options.prepareQuery(val); for (i = 0, len = rowcache.length; i < len; i++) { - if (val_empty || options.testQuery(query, cache[i], rowcache[i])) { + if (query.length > 0 && query[0].length < options.minValLength) { + options.show.apply(rowcache[i]); + noresults = false; + numMatchedRows++; + } else if (val_empty || options.testQuery(query, cache[i], rowcache[i])) { options.show.apply(rowcache[i]); noresults = false; numMatchedRows++; @@ -179,6 +187,7 @@ this.matchedResultsCount = numMatchedRows; this.loader(false); options.onAfter.call(this); + last_val = val; return this; }; @@ -190,6 +199,19 @@ self.trigger(); }; + /* + * External API so that users can perform search programatically. + * */ + this.reset = function () { + val = ''; + this.loader(true); + options.onBefore.call(this); + window.clearTimeout(timeout); + timeout = window.setTimeout(function () { + self.go(); + }, options.delay); + }; + /* * External API to get the number of matched results as seen in * https://github.com/ruiz107/quicksearch/commit/f78dc440b42d95ce9caed1d087174dd4359982d6 @@ -265,18 +287,19 @@ }; this.trigger = function () { - if (val.length < options.minValLength) { + if ((val.length < options.minValLength && val.length > last_val.length) || (val.length < options.minValLength-1 && val.length < last_val.length)) { options.onValTooSmall.call(this, val); self.go(); } else { this.loader(true); options.onBefore.call(this); + window.clearTimeout(timeout); + timeout = window.setTimeout(function () { + self.go(); + }, options.delay); } - window.clearTimeout(timeout); - timeout = window.setTimeout(function () { - self.go(); - }, options.delay); + return this; }; @@ -291,8 +314,12 @@ val = $(this).val(); self.trigger(); }); + $(this).on(options.resetBind, function () { + val = ''; + self.reset(); + }); }); }; -}(jQuery, this, document)); +}(jQuery, this, document)); \ No newline at end of file From a22083bfac911ded761eee27b1f69b5d0acc8937 Mon Sep 17 00:00:00 2001 From: beaubbe Date: Fri, 29 Nov 2013 17:49:32 -0500 Subject: [PATCH 39/58] Grunt js file Halstead changed from 17 to 20 --- Gruntfile.js | 2 +- dist/jquery.quicksearch.js | 43 ++++++++++++++++++++++++------ dist/jquery.quicksearch.min.js | 9 ++++--- dist/jquery.quicksearch.min.js.map | 2 +- 4 files changed, 42 insertions(+), 14 deletions(-) diff --git a/Gruntfile.js b/Gruntfile.js index 14354f3..28f2656 100644 --- a/Gruntfile.js +++ b/Gruntfile.js @@ -99,7 +99,7 @@ module.exports = function(grunt) { //jsLintXML: 'report.xml', // create XML JSLint-like report errorsOnly: false, // show only maintainability errors cyclomatic: 10, // 3 - halstead: 17, // 8 + halstead: 20, // 8 maintainability: 95 //100 } } diff --git a/dist/jquery.quicksearch.js b/dist/jquery.quicksearch.js index bce60b0..fe00011 100644 --- a/dist/jquery.quicksearch.js +++ b/dist/jquery.quicksearch.js @@ -1,3 +1,6 @@ +/*! jQuery-QuickSearch - v2.0.2 - 2013-11-29 +* Copyright (c) 2013 Deux Huit Huit (http://deuxhuithuit.com/); +* Licensed MIT http://deuxhuithuit.mit-license.org */ /*! jQuery-QuickSearch - v2.0.2 - 2013-11-15 * Copyright (c) 2013 Deux Huit Huit (http://deuxhuithuit.com/); * Licensed MIT http://deuxhuithuit.mit-license.org */ @@ -18,6 +21,7 @@ noResults: '', matchedResultsCount: 0, bind: 'keyup search', + resetBind: 'reset', removeDiacritics: false, minValLength: 0, onBefore: $.noop, @@ -139,7 +143,7 @@ return str; }; - var timeout, cache, rowcache, jq_results, val = '', + var timeout, cache, rowcache, jq_results, val = '', last_val = '', self = this, options = $.extend($.quicksearch.defaults, opt); @@ -163,7 +167,11 @@ query = options.prepareQuery(val); for (i = 0, len = rowcache.length; i < len; i++) { - if (val_empty || options.testQuery(query, cache[i], rowcache[i])) { + if (query.length > 0 && query[0].length < options.minValLength) { + options.show.apply(rowcache[i]); + noresults = false; + numMatchedRows++; + } else if (val_empty || options.testQuery(query, cache[i], rowcache[i])) { options.show.apply(rowcache[i]); noresults = false; numMatchedRows++; @@ -182,6 +190,7 @@ this.matchedResultsCount = numMatchedRows; this.loader(false); options.onAfter.call(this); + last_val = val; return this; }; @@ -193,6 +202,19 @@ self.trigger(); }; + /* + * External API so that users can perform search programatically. + * */ + this.reset = function () { + val = ''; + this.loader(true); + options.onBefore.call(this); + window.clearTimeout(timeout); + timeout = window.setTimeout(function () { + self.go(); + }, options.delay); + }; + /* * External API to get the number of matched results as seen in * https://github.com/ruiz107/quicksearch/commit/f78dc440b42d95ce9caed1d087174dd4359982d6 @@ -268,18 +290,19 @@ }; this.trigger = function () { - if (val.length < options.minValLength) { + if ((val.length < options.minValLength && val.length > last_val.length) || (val.length < options.minValLength-1 && val.length < last_val.length)) { options.onValTooSmall.call(this, val); self.go(); } else { this.loader(true); options.onBefore.call(this); + window.clearTimeout(timeout); + timeout = window.setTimeout(function () { + self.go(); + }, options.delay); } - window.clearTimeout(timeout); - timeout = window.setTimeout(function () { - self.go(); - }, options.delay); + return this; }; @@ -294,8 +317,12 @@ val = $(this).val(); self.trigger(); }); + $(this).on(options.resetBind, function () { + val = ''; + self.reset(); + }); }); }; -}(jQuery, this, document)); +}(jQuery, this, document)); \ No newline at end of file diff --git a/dist/jquery.quicksearch.min.js b/dist/jquery.quicksearch.min.js index 6150850..9713eb5 100644 --- a/dist/jquery.quicksearch.min.js +++ b/dist/jquery.quicksearch.min.js @@ -1,5 +1,6 @@ -/*! jQuery-QuickSearch - v2.0.2 - 2013-11-15 -* Copyright (c) 2013 Deux Huit Huit (http://deuxhuithuit.com/); -* Licensed MIT http://deuxhuithuit.mit-license.org */ -!function(a,b){"use strict";a.quicksearch={defaults:{delay:100,selector:null,stripeRows:null,loader:null,noResults:"",matchedResultsCount:0,bind:"keyup search",removeDiacritics:!1,minValLength:0,onBefore:a.noop,onAfter:a.noop,onValTooSmall:a.noop,show:function(){a(this).show()},hide:function(){a(this).hide()},prepareQuery:function(a){return a.toLowerCase().split(" ")},testQuery:function(a,b){for(var c=0;cb;b++)h||k.testQuery(a,f[b],g[b])?(k.show.apply(g[b]),e=!1,d++):k.hide.apply(g[b]);return e?this.results(!1):(this.results(!0),this.stripe()),this.matchedResultsCount=d,this.loader(!1),k.onAfter.call(this),this},this.search=function(a){i=a,j.trigger()},this.currentMatchedResults=function(){return this.matchedResultsCount},this.stripe=function(){if("object"==typeof k.stripeRows&&null!==k.stripeRows){var b=k.stripeRows.join(" "),c=k.stripeRows.length;h.not(":hidden").each(function(d){a(this).removeClass(b).addClass(k.stripeRows[d%c])})}return this},this.strip_html=function(b){var c=b.replace(new RegExp("<[^<]+\\>","g"),"");return c=a.trim(c.toLowerCase())},this.results=function(a){return k.noResults.length&&k.noResults[a?"hide":"show"](),this},this.loader=function(a){return k.loader.length&&k.loader[a?"show":"hide"](),this},this.cache=function(b){b="undefined"==typeof b?!0:b,h=k.noResults?a(c).not(k.noResults):a(c);var d="string"==typeof k.selector?h.find(k.selector):a(c).not(k.noResults);return f=d.map(function(){var a=j.strip_html(this.innerHTML);return k.removeDiacritics?j.removeDiacritics(a):a}),g=h.map(function(){return this}),i=i||this.val()||"",b&&this.go(),this},this.trigger=function(){return i.lengthb;b++)a.length>0&&a[0].length","g"),"");return c=a.trim(c.toLowerCase())},this.results=function(a){return l.noResults.length&&l.noResults[a?"hide":"show"](),this},this.loader=function(a){return l.loader.length&&l.loader[a?"show":"hide"](),this},this.cache=function(b){b="undefined"==typeof b?!0:b,h=l.noResults?a(c).not(l.noResults):a(c);var d="string"==typeof l.selector?h.find(l.selector):a(c).not(l.noResults);return f=d.map(function(){var a=k.strip_html(this.innerHTML);return l.removeDiacritics?k.removeDiacritics(a):a}),g=h.map(function(){return this}),i=i||this.val()||"",b&&this.go(),this},this.trigger=function(){return i.lengthj.length||i.length Date: Fri, 29 Nov 2013 17:57:10 -0500 Subject: [PATCH 40/58] Update documentation added resetBind --- README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/README.md b/README.md index 3f52c20..e2ead8e 100644 --- a/README.md +++ b/README.md @@ -86,6 +86,8 @@ $.ajax({ A query selector to show if there's no results for the search * **bind** Event that the trigger is tied to. Defaults to 'keyup search' +* **resetBind** + Event that the reset event is tied to. Defaults to 'reset' * **removeDiacritics** Remove diacritics from the search input. Defaults to false. * **minValLength** From 323c8427f5a63780fc0bc9464803ed9ca204c788 Mon Sep 17 00:00:00 2001 From: Nicolas Brassard Date: Mon, 24 Mar 2014 14:15:04 -0400 Subject: [PATCH 41/58] Make sure we do not modify the defaults --- src/jquery.quicksearch.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/jquery.quicksearch.js b/src/jquery.quicksearch.js index 0a1494b..cc8a7d4 100644 --- a/src/jquery.quicksearch.js +++ b/src/jquery.quicksearch.js @@ -138,7 +138,7 @@ var timeout, cache, rowcache, jq_results, val = '', self = this, - options = $.extend($.quicksearch.defaults, opt); + options = $.extend({}, $.quicksearch.defaults, opt); // Assure selectors options.noResults = !options.noResults ? $() : $(options.noResults); From 2188c084874d388954559d331385ea68d7627825 Mon Sep 17 00:00:00 2001 From: Nicolas Brassard Date: Mon, 24 Mar 2014 14:16:16 -0400 Subject: [PATCH 42/58] Fixed some bugs in the demo --- examples/index.html | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/examples/index.html b/examples/index.html index 62167db..13785ec 100644 --- a/examples/index.html +++ b/examples/index.html @@ -36,7 +36,7 @@ /* Example 1 */ - $('input#id_search').quicksearch('table tbody tr'); + $('input#id_search').quicksearch('table#table_example tbody tr'); /* Example 2 @@ -46,7 +46,7 @@ 'selector': 'th', 'stripeRows': ['odd', 'even'], 'loader': 'span.loading', - 'bind': 'keyup click', + 'bind': 'keyup click input', 'show': function () { this.style.color = ''; }, @@ -576,7 +576,7 @@

    Example with options — search with email regexp on <th> only

    Date: Mon, 24 Mar 2014 14:17:29 -0400 Subject: [PATCH 43/58] Added input as default event for IE11 (re #3) --- src/jquery.quicksearch.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/jquery.quicksearch.js b/src/jquery.quicksearch.js index cc8a7d4..dc76620 100644 --- a/src/jquery.quicksearch.js +++ b/src/jquery.quicksearch.js @@ -14,7 +14,7 @@ loader: null, noResults: '', matchedResultsCount: 0, - bind: 'keyup search', + bind: 'keyup search input', removeDiacritics: false, minValLength: 0, onBefore: $.noop, From 55e22f7b188749034eda5c4902e98ba90e452b23 Mon Sep 17 00:00:00 2001 From: Nicolas Brassard Date: Mon, 24 Mar 2014 14:19:50 -0400 Subject: [PATCH 44/58] Dependacies fix --- package.json | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/package.json b/package.json index 138c9d4..34841df 100644 --- a/package.json +++ b/package.json @@ -29,9 +29,8 @@ }, "dependencies": { "grunt": "~0.4.1", - "grunt-cli": "~0.1.9", "grunt-complexity": "~0.1.0", - "grunt-contrib-uglify": "~0.2.0", + "grunt-contrib-uglify": "~0.2.7", "grunt-contrib-jshint": "~0.4.3", "grunt-contrib-concat": "~0.2.0", "grunt-contrib-watch": "~0.4.4", From 6dce5c4ff64ae2fd97ed115b0373ac456fe63c41 Mon Sep 17 00:00:00 2001 From: Nicolas Brassard Date: Mon, 24 Mar 2014 14:20:00 -0400 Subject: [PATCH 45/58] new build --- dist/jquery.quicksearch.js | 8 ++++---- dist/jquery.quicksearch.min.js | 9 +++++---- dist/jquery.quicksearch.min.js.map | 2 +- 3 files changed, 10 insertions(+), 9 deletions(-) diff --git a/dist/jquery.quicksearch.js b/dist/jquery.quicksearch.js index 683f253..38fd5a6 100644 --- a/dist/jquery.quicksearch.js +++ b/dist/jquery.quicksearch.js @@ -1,5 +1,5 @@ -/*! jQuery-QuickSearch - v2.0.1 - 2013-10-31 -* Copyright (c) 2013 Deux Huit Huit (http://deuxhuithuit.com/); +/*! jQuery-QuickSearch - v2.0.2 - 2014-03-24 +* Copyright (c) 2014 Deux Huit Huit (http://deuxhuithuit.com/); * Licensed MIT http://deuxhuithuit.mit-license.org */ /** * Copyrights: Deux Huit Huit, Rik Lomas. @@ -17,7 +17,7 @@ loader: null, noResults: '', matchedResultsCount: 0, - bind: 'keyup', + bind: 'keyup search input', removeDiacritics: false, minValLength: 0, onBefore: $.noop, @@ -141,7 +141,7 @@ var timeout, cache, rowcache, jq_results, val = '', self = this, - options = $.extend($.quicksearch.defaults, opt); + options = $.extend({}, $.quicksearch.defaults, opt); // Assure selectors options.noResults = !options.noResults ? $() : $(options.noResults); diff --git a/dist/jquery.quicksearch.min.js b/dist/jquery.quicksearch.min.js index d8330d5..3a172f7 100644 --- a/dist/jquery.quicksearch.min.js +++ b/dist/jquery.quicksearch.min.js @@ -1,5 +1,6 @@ -/*! jQuery-QuickSearch - v2.0.1 - 2013-10-31 -* Copyright (c) 2013 Deux Huit Huit (http://deuxhuithuit.com/); -* Licensed MIT http://deuxhuithuit.mit-license.org */ -!function(a,b){"use strict";a.quicksearch={defaults:{delay:100,selector:null,stripeRows:null,loader:null,noResults:"",matchedResultsCount:0,bind:"keyup",removeDiacritics:!1,minValLength:0,onBefore:a.noop,onAfter:a.noop,onValTooSmall:a.noop,show:function(){a(this).show()},hide:function(){a(this).hide()},prepareQuery:function(a){return a.toLowerCase().split(" ")},testQuery:function(a,b){for(var c=0;cb;b++)h||k.testQuery(a,f[b],g[b])?(k.show.apply(g[b]),e=!1,d++):k.hide.apply(g[b]);return e?this.results(!1):(this.results(!0),this.stripe()),this.matchedResultsCount=d,this.loader(!1),k.onAfter.call(this),this},this.search=function(a){i=a,j.trigger()},this.currentMatchedResults=function(){return this.matchedResultsCount},this.stripe=function(){if("object"==typeof k.stripeRows&&null!==k.stripeRows){var b=k.stripeRows.join(" "),c=k.stripeRows.length;h.not(":hidden").each(function(d){a(this).removeClass(b).addClass(k.stripeRows[d%c])})}return this},this.strip_html=function(b){var c=b.replace(new RegExp("<[^<]+\\>","g"),"");return c=a.trim(c.toLowerCase())},this.results=function(a){return k.noResults.length&&k.noResults[a?"hide":"show"](),this},this.loader=function(a){return k.loader.length&&k.loader[a?"show":"hide"](),this},this.cache=function(b){b="undefined"==typeof b?!0:b,h=k.noResults?a(c).not(k.noResults):a(c);var d="string"==typeof k.selector?h.find(k.selector):a(c).not(k.noResults);return f=d.map(function(){var a=j.strip_html(this.innerHTML);return k.removeDiacritics?j.removeDiacritics(a):a}),g=h.map(function(){return this}),i=i||this.val()||"",b&&this.go(),this},this.trigger=function(){return i.lengthb;b++)h||k.testQuery(a,f[b],g[b])?(k.show.apply(g[b]),e=!1,d++):k.hide.apply(g[b]);return e?this.results(!1):(this.results(!0),this.stripe()),this.matchedResultsCount=d,this.loader(!1),k.onAfter.call(this),this},this.search=function(a){i=a,j.trigger()},this.currentMatchedResults=function(){return this.matchedResultsCount},this.stripe=function(){if("object"==typeof k.stripeRows&&null!==k.stripeRows){var b=k.stripeRows.join(" "),c=k.stripeRows.length;h.not(":hidden").each(function(d){a(this).removeClass(b).addClass(k.stripeRows[d%c])})}return this},this.strip_html=function(b){var c=b.replace(new RegExp("<[^<]+\\>","g"),"");return c=a.trim(c.toLowerCase())},this.results=function(a){return k.noResults.length&&k.noResults[a?"hide":"show"](),this},this.loader=function(a){return k.loader.length&&k.loader[a?"show":"hide"](),this},this.cache=function(b){b="undefined"==typeof b?!0:b,h=k.noResults?a(c).not(k.noResults):a(c);var d="string"==typeof k.selector?h.find(k.selector):a(c).not(k.noResults);return f=d.map(function(){var a=j.strip_html(this.innerHTML);return k.removeDiacritics?j.removeDiacritics(a):a}),g=h.map(function(){return this}),i=i||this.val()||"",b&&this.go(),this},this.trigger=function(){return i.length Date: Mon, 24 Mar 2014 14:20:51 -0400 Subject: [PATCH 46/58] Version bump --- bower.json | 2 +- jquery.quicksearch.jquery.json | 2 +- package.json | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/bower.json b/bower.json index 26259e4..792d5fb 100644 --- a/bower.json +++ b/bower.json @@ -2,7 +2,7 @@ "name": "jquery.quicksearch", "title": "jQuery-QuickSearch", "description": "A jQuery plugin for searching through tables, lists, etc quickly", - "version": "2.0.2", + "version": "2.0.3", "homepage": "", "author": [ { diff --git a/jquery.quicksearch.jquery.json b/jquery.quicksearch.jquery.json index 25e6a74..280467e 100644 --- a/jquery.quicksearch.jquery.json +++ b/jquery.quicksearch.jquery.json @@ -2,7 +2,7 @@ "name": "jquery.quicksearch", "title": "jQuery-QuickSearch", "description": "A jQuery plugin for searching through tables, lists, etc quickly", - "version": "2.0.2", + "version": "2.0.3", "homepage": "", "author": { "name": "Deux Huit Huit", diff --git a/package.json b/package.json index 34841df..f1fc093 100644 --- a/package.json +++ b/package.json @@ -2,7 +2,7 @@ "name": "jquery.quicksearch", "title": "jQuery-QuickSearch", "description": "A jQuery plugin for searching through tables, lists, etc quickly", - "version": "2.0.2", + "version": "2.0.3", "homepage": "", "author": [ { From f7da865443eaf169cfd41afed1ccfa19ad7b9b29 Mon Sep 17 00:00:00 2001 From: Nicolas Brassard Date: Mon, 24 Mar 2014 14:20:59 -0400 Subject: [PATCH 47/58] new build --- dist/jquery.quicksearch.js | 2 +- dist/jquery.quicksearch.min.js | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/dist/jquery.quicksearch.js b/dist/jquery.quicksearch.js index 38fd5a6..c8ae218 100644 --- a/dist/jquery.quicksearch.js +++ b/dist/jquery.quicksearch.js @@ -1,4 +1,4 @@ -/*! jQuery-QuickSearch - v2.0.2 - 2014-03-24 +/*! jQuery-QuickSearch - v2.0.3 - 2014-03-24 * Copyright (c) 2014 Deux Huit Huit (http://deuxhuithuit.com/); * Licensed MIT http://deuxhuithuit.mit-license.org */ /** diff --git a/dist/jquery.quicksearch.min.js b/dist/jquery.quicksearch.min.js index 3a172f7..816ff03 100644 --- a/dist/jquery.quicksearch.min.js +++ b/dist/jquery.quicksearch.min.js @@ -1,4 +1,4 @@ -/*! jQuery-QuickSearch - v2.0.2 - 2014-03-24 +/*! jQuery-QuickSearch - v2.0.3 - 2014-03-24 * Copyright (c) 2014 Deux Huit Huit (http://deuxhuithuit.com/); * Licensed MIT http://deuxhuithuit.mit-license.org */ From 9d657d2df1f6bfb16b831121f05295065dd74f69 Mon Sep 17 00:00:00 2001 From: Nicolas Brassard Date: Mon, 24 Mar 2014 14:24:06 -0400 Subject: [PATCH 48/58] Version bump --- bower.json | 2 +- jquery.quicksearch.jquery.json | 2 +- package.json | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/bower.json b/bower.json index 792d5fb..d9aaf79 100644 --- a/bower.json +++ b/bower.json @@ -2,7 +2,7 @@ "name": "jquery.quicksearch", "title": "jQuery-QuickSearch", "description": "A jQuery plugin for searching through tables, lists, etc quickly", - "version": "2.0.3", + "version": "2.0.4", "homepage": "", "author": [ { diff --git a/jquery.quicksearch.jquery.json b/jquery.quicksearch.jquery.json index 280467e..09fa48a 100644 --- a/jquery.quicksearch.jquery.json +++ b/jquery.quicksearch.jquery.json @@ -2,7 +2,7 @@ "name": "jquery.quicksearch", "title": "jQuery-QuickSearch", "description": "A jQuery plugin for searching through tables, lists, etc quickly", - "version": "2.0.3", + "version": "2.0.4", "homepage": "", "author": { "name": "Deux Huit Huit", diff --git a/package.json b/package.json index f1fc093..655c29c 100644 --- a/package.json +++ b/package.json @@ -2,7 +2,7 @@ "name": "jquery.quicksearch", "title": "jQuery-QuickSearch", "description": "A jQuery plugin for searching through tables, lists, etc quickly", - "version": "2.0.3", + "version": "2.0.4", "homepage": "", "author": [ { From 9f613658880aeb1edfc0ff8b6a1afb6c88449b5e Mon Sep 17 00:00:00 2001 From: cntoplolicon Date: Mon, 26 May 2014 17:17:39 +0800 Subject: [PATCH 49/58] refs #5 Performance of caching remove unnecessary element selection --- src/jquery.quicksearch.js | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/jquery.quicksearch.js b/src/jquery.quicksearch.js index 8aa7791..ae54039 100644 --- a/src/jquery.quicksearch.js +++ b/src/jquery.quicksearch.js @@ -259,10 +259,10 @@ doRedraw = (typeof doRedraw === "undefined") ? true : doRedraw; - jq_results = options.noResults ? $(target).not(options.noResults) : $(target); + jq_results = $(target).not(options.noResults); + + var t = (typeof options.selector === "string") ? jq_results.find(options.selector) : jq_results; - var t = (typeof options.selector === "string") ? jq_results.find(options.selector) : $(target).not(options.noResults); - cache = t.map(function () { var temp = self.strip_html(this.innerHTML); return options.removeDiacritics ? self.removeDiacritics(temp) : temp; From 6bf4004d9fb56f9f668b5bf2de62eb977fe2b0c6 Mon Sep 17 00:00:00 2001 From: Nicolas Brassard Date: Tue, 27 May 2014 11:13:45 -0400 Subject: [PATCH 50/58] new build --- dist/jquery.quicksearch.js | 13 ++++++++----- dist/jquery.quicksearch.min.js | 4 ++-- dist/jquery.quicksearch.min.js.map | 2 +- 3 files changed, 11 insertions(+), 8 deletions(-) diff --git a/dist/jquery.quicksearch.js b/dist/jquery.quicksearch.js index 4040635..971df3f 100644 --- a/dist/jquery.quicksearch.js +++ b/dist/jquery.quicksearch.js @@ -1,6 +1,9 @@ -/*! jQuery-QuickSearch - v2.0.3 - 2014-03-24 +/*! jQuery-QuickSearch - v2.0.4 - 2014-05-27 * Copyright (c) 2014 Deux Huit Huit (http://deuxhuithuit.com/); * Licensed MIT http://deuxhuithuit.mit-license.org */ +/*! jQuery-QuickSearch - v2.0.2 - 2013-11-15 +* Copyright (c) 2013 Deux Huit Huit (http://deuxhuithuit.com/); +* Licensed MIT http://deuxhuithuit.mit-license.org */ /** * Copyrights: Deux Huit Huit, Rik Lomas. * Licensed MIT: http://deuxhuithuit.mit-license.org @@ -259,10 +262,10 @@ doRedraw = (typeof doRedraw === "undefined") ? true : doRedraw; - jq_results = options.noResults ? $(target).not(options.noResults) : $(target); + jq_results = $(target).not(options.noResults); + + var t = (typeof options.selector === "string") ? jq_results.find(options.selector) : jq_results; - var t = (typeof options.selector === "string") ? jq_results.find(options.selector) : $(target).not(options.noResults); - cache = t.map(function () { var temp = self.strip_html(this.innerHTML); return options.removeDiacritics ? self.removeDiacritics(temp) : temp; @@ -321,4 +324,4 @@ }; -}(jQuery, this, document)); +}(jQuery, this, document)); diff --git a/dist/jquery.quicksearch.min.js b/dist/jquery.quicksearch.min.js index 816ff03..c2759ca 100644 --- a/dist/jquery.quicksearch.min.js +++ b/dist/jquery.quicksearch.min.js @@ -1,6 +1,6 @@ -/*! jQuery-QuickSearch - v2.0.3 - 2014-03-24 +/*! jQuery-QuickSearch - v2.0.4 - 2014-05-27 * Copyright (c) 2014 Deux Huit Huit (http://deuxhuithuit.com/); * Licensed MIT http://deuxhuithuit.mit-license.org */ -!function(a,b){"use strict";a.quicksearch={defaults:{delay:100,selector:null,stripeRows:null,loader:null,noResults:"",matchedResultsCount:0,bind:"keyup search input",removeDiacritics:!1,minValLength:0,onBefore:a.noop,onAfter:a.noop,onValTooSmall:a.noop,show:function(){a(this).show()},hide:function(){a(this).hide()},prepareQuery:function(a){return a.toLowerCase().split(" ")},testQuery:function(a,b){for(var c=0;cb;b++)h||k.testQuery(a,f[b],g[b])?(k.show.apply(g[b]),e=!1,d++):k.hide.apply(g[b]);return e?this.results(!1):(this.results(!0),this.stripe()),this.matchedResultsCount=d,this.loader(!1),k.onAfter.call(this),this},this.search=function(a){i=a,j.trigger()},this.currentMatchedResults=function(){return this.matchedResultsCount},this.stripe=function(){if("object"==typeof k.stripeRows&&null!==k.stripeRows){var b=k.stripeRows.join(" "),c=k.stripeRows.length;h.not(":hidden").each(function(d){a(this).removeClass(b).addClass(k.stripeRows[d%c])})}return this},this.strip_html=function(b){var c=b.replace(new RegExp("<[^<]+\\>","g"),"");return c=a.trim(c.toLowerCase())},this.results=function(a){return k.noResults.length&&k.noResults[a?"hide":"show"](),this},this.loader=function(a){return k.loader.length&&k.loader[a?"show":"hide"](),this},this.cache=function(b){b="undefined"==typeof b?!0:b,h=k.noResults?a(c).not(k.noResults):a(c);var d="string"==typeof k.selector?h.find(k.selector):a(c).not(k.noResults);return f=d.map(function(){var a=j.strip_html(this.innerHTML);return k.removeDiacritics?j.removeDiacritics(a):a}),g=h.map(function(){return this}),i=i||this.val()||"",b&&this.go(),this},this.trigger=function(){return i.lengthb;b++)a.length>0&&a[0].length","g"),"");return c=a.trim(c.toLowerCase())},this.results=function(a){return l.noResults.length&&l.noResults[a?"hide":"show"](),this},this.loader=function(a){return l.loader.length&&l.loader[a?"show":"hide"](),this},this.cache=function(b){b="undefined"==typeof b?!0:b,h=a(c).not(l.noResults);var d="string"==typeof l.selector?h.find(l.selector):h;return f=d.map(function(){var a=k.strip_html(this.innerHTML);return l.removeDiacritics?k.removeDiacritics(a):a}),g=h.map(function(){return this}),i=i||this.val()||"",b&&this.go(),this},this.trigger=function(){return i.lengthj.length||i.length Date: Tue, 27 May 2014 11:15:15 -0400 Subject: [PATCH 51/58] version bump --- LICENSE | 2 +- bower.json | 2 +- jquery.quicksearch.jquery.json | 2 +- package.json | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/LICENSE b/LICENSE index ddc4c17..36b279a 100644 --- a/LICENSE +++ b/LICENSE @@ -4,7 +4,7 @@ follows: ----- begin license block ----- -Copyright 2013 Deux Huit Huit +Copyright 2013-2014 Deux Huit Huit Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/bower.json b/bower.json index 956b09e..5c31306 100644 --- a/bower.json +++ b/bower.json @@ -2,7 +2,7 @@ "name": "jquery.quicksearch", "title": "jQuery-QuickSearch", "description": "A jQuery plugin for searching through tables, lists, etc quickly", - "version": "2.0.4", + "version": "2.0.5", "homepage": "", "author": [ { diff --git a/jquery.quicksearch.jquery.json b/jquery.quicksearch.jquery.json index 09fa48a..cf5c63d 100644 --- a/jquery.quicksearch.jquery.json +++ b/jquery.quicksearch.jquery.json @@ -2,7 +2,7 @@ "name": "jquery.quicksearch", "title": "jQuery-QuickSearch", "description": "A jQuery plugin for searching through tables, lists, etc quickly", - "version": "2.0.4", + "version": "2.0.5", "homepage": "", "author": { "name": "Deux Huit Huit", diff --git a/package.json b/package.json index 655c29c..8b25c60 100644 --- a/package.json +++ b/package.json @@ -2,7 +2,7 @@ "name": "jquery.quicksearch", "title": "jQuery-QuickSearch", "description": "A jQuery plugin for searching through tables, lists, etc quickly", - "version": "2.0.4", + "version": "2.0.5", "homepage": "", "author": [ { From 3a4d1cd86657505137b2e5057c6015b00127590a Mon Sep 17 00:00:00 2001 From: Richard Westenra Date: Wed, 28 May 2014 11:47:34 +0100 Subject: [PATCH 52/58] Add main attribute to bower.json Adding a "main" url attribute should help with bower installations. --- bower.json | 1 + 1 file changed, 1 insertion(+) diff --git a/bower.json b/bower.json index 956b09e..fd1d60f 100644 --- a/bower.json +++ b/bower.json @@ -3,6 +3,7 @@ "title": "jQuery-QuickSearch", "description": "A jQuery plugin for searching through tables, lists, etc quickly", "version": "2.0.4", + "main": "dist/jquery.quicksearch.js", "homepage": "", "author": [ { From 1754672d6adace413fa4f3d191f5aef49109fc9e Mon Sep 17 00:00:00 2001 From: Richard Westenra Date: Wed, 28 May 2014 11:47:34 +0100 Subject: [PATCH 53/58] cherry-picking 3a4d1cd86657505137b2e5057c6015b00127590a --- bower.json | 1 + 1 file changed, 1 insertion(+) diff --git a/bower.json b/bower.json index 5c31306..7b8a4b9 100644 --- a/bower.json +++ b/bower.json @@ -3,6 +3,7 @@ "title": "jQuery-QuickSearch", "description": "A jQuery plugin for searching through tables, lists, etc quickly", "version": "2.0.5", + "main": "dist/jquery.quicksearch.js", "homepage": "", "author": [ { From df80aad8d252d04efb4bbb3a69ad6638363e68df Mon Sep 17 00:00:00 2001 From: Nicolas Brassard Date: Wed, 28 May 2014 11:36:04 -0400 Subject: [PATCH 54/58] added a message regarding which branch to do PRs in --- README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/README.md b/README.md index e2ead8e..c2436d4 100644 --- a/README.md +++ b/README.md @@ -154,8 +154,10 @@ If you have a bug fix, the best way to help would be to: * Fork the project by clicking "Fork this project" at the top of this page * Clone your version of quicksearch from your Github account to your computer +* Checkout the `dev` branch * Fix and commit the bugs, then push your version to your Github account * Click "pull request" at the top of my Github page +* Please create the "Pull Request" to push in the `branch` I can't promise to answer every question about quicksearch, but please do [report bugs here][issues]. From 78b1f75f0e350c63be593b0414d63f879eee7b5f Mon Sep 17 00:00:00 2001 From: Nicolas Brassard Date: Tue, 26 Aug 2014 13:44:29 -0400 Subject: [PATCH 55/58] Replace tags with space instead of nothing This prevent merging data across html element. Closes #9. --- src/jquery.quicksearch.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/jquery.quicksearch.js b/src/jquery.quicksearch.js index ae54039..ecaefa9 100644 --- a/src/jquery.quicksearch.js +++ b/src/jquery.quicksearch.js @@ -234,7 +234,7 @@ }; this.strip_html = function (input) { - var output = input.replace(new RegExp('<[^<]+\\>', 'g'), ""); + var output = input.replace(new RegExp('<[^<]+\\>', 'g'), ' '); output = $.trim(output.toLowerCase()); return output; }; From f7d025a828103b363b0e4cf766a234892f0c9edf Mon Sep 17 00:00:00 2001 From: Nicolas Brassard Date: Tue, 26 Aug 2014 13:45:10 -0400 Subject: [PATCH 56/58] new build --- dist/jquery.quicksearch.js | 4 ++-- dist/jquery.quicksearch.min.js | 4 ++-- dist/jquery.quicksearch.min.js.map | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/dist/jquery.quicksearch.js b/dist/jquery.quicksearch.js index 971df3f..4d6f9ec 100644 --- a/dist/jquery.quicksearch.js +++ b/dist/jquery.quicksearch.js @@ -1,4 +1,4 @@ -/*! jQuery-QuickSearch - v2.0.4 - 2014-05-27 +/*! jQuery-QuickSearch - v2.0.5 - 2014-08-26 * Copyright (c) 2014 Deux Huit Huit (http://deuxhuithuit.com/); * Licensed MIT http://deuxhuithuit.mit-license.org */ /*! jQuery-QuickSearch - v2.0.2 - 2013-11-15 @@ -237,7 +237,7 @@ }; this.strip_html = function (input) { - var output = input.replace(new RegExp('<[^<]+\\>', 'g'), ""); + var output = input.replace(new RegExp('<[^<]+\\>', 'g'), ' '); output = $.trim(output.toLowerCase()); return output; }; diff --git a/dist/jquery.quicksearch.min.js b/dist/jquery.quicksearch.min.js index c2759ca..9de669a 100644 --- a/dist/jquery.quicksearch.min.js +++ b/dist/jquery.quicksearch.min.js @@ -1,6 +1,6 @@ -/*! jQuery-QuickSearch - v2.0.4 - 2014-05-27 +/*! jQuery-QuickSearch - v2.0.5 - 2014-08-26 * Copyright (c) 2014 Deux Huit Huit (http://deuxhuithuit.com/); * Licensed MIT http://deuxhuithuit.mit-license.org */ -!function(a,b){"use strict";a.quicksearch={defaults:{delay:100,selector:null,stripeRows:null,loader:null,noResults:"",matchedResultsCount:0,bind:"keyup search input",removeDiacritics:!1,minValLength:0,onBefore:a.noop,onAfter:a.noop,onValTooSmall:a.noop,show:function(){a(this).show()},hide:function(){a(this).hide()},prepareQuery:function(a){return a.toLowerCase().split(" ")},testQuery:function(a,b){for(var c=0;cb;b++)a.length>0&&a[0].length","g"),"");return c=a.trim(c.toLowerCase())},this.results=function(a){return l.noResults.length&&l.noResults[a?"hide":"show"](),this},this.loader=function(a){return l.loader.length&&l.loader[a?"show":"hide"](),this},this.cache=function(b){b="undefined"==typeof b?!0:b,h=a(c).not(l.noResults);var d="string"==typeof l.selector?h.find(l.selector):h;return f=d.map(function(){var a=k.strip_html(this.innerHTML);return l.removeDiacritics?k.removeDiacritics(a):a}),g=h.map(function(){return this}),i=i||this.val()||"",b&&this.go(),this},this.trigger=function(){return i.lengthj.length||i.lengthb;b++)a.length>0&&a[0].length","g")," ");return c=a.trim(c.toLowerCase())},this.results=function(a){return l.noResults.length&&l.noResults[a?"hide":"show"](),this},this.loader=function(a){return l.loader.length&&l.loader[a?"show":"hide"](),this},this.cache=function(b){b="undefined"==typeof b?!0:b,h=a(c).not(l.noResults);var d="string"==typeof l.selector?h.find(l.selector):h;return f=d.map(function(){var a=k.strip_html(this.innerHTML);return l.removeDiacritics?k.removeDiacritics(a):a}),g=h.map(function(){return this}),i=i||this.val()||"",b&&this.go(),this},this.trigger=function(){return i.lengthj.length||i.length Date: Fri, 14 Nov 2014 10:49:13 -0500 Subject: [PATCH 57/58] jquery plugins is deprecated: use npm instead --- jquery.quicksearch.jquery.json | 28 ---------------------------- package.json | 16 ++++++++++++---- 2 files changed, 12 insertions(+), 32 deletions(-) delete mode 100644 jquery.quicksearch.jquery.json diff --git a/jquery.quicksearch.jquery.json b/jquery.quicksearch.jquery.json deleted file mode 100644 index cf5c63d..0000000 --- a/jquery.quicksearch.jquery.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "name": "jquery.quicksearch", - "title": "jQuery-QuickSearch", - "description": "A jQuery plugin for searching through tables, lists, etc quickly", - "version": "2.0.5", - "homepage": "", - "author": { - "name": "Deux Huit Huit", - "url": "http://deuxhuithuit.com/" - }, - "licenses": [ - { - "type": "MIT", - "url": "http://deuxhuithuit.mit-license.org/" - } - ], - "repository": { - "type": "git", - "url": "git://github.com/DeuxHuitHuit/quicksearch.git" - }, - "bugs": { - "url": "https://github.com/DeuxHuitHuit/quicksearch/issues" - }, - "dependencies": { - "jquery": ">=1.4" - }, - "keywords": ["quicksearch"] -} \ No newline at end of file diff --git a/package.json b/package.json index 8b25c60..e5a8773 100644 --- a/package.json +++ b/package.json @@ -3,11 +3,11 @@ "title": "jQuery-QuickSearch", "description": "A jQuery plugin for searching through tables, lists, etc quickly", "version": "2.0.5", - "homepage": "", + "homepage": "http://deuxhuithuit.github.io/quicksearch/", "author": [ { "name": "Deux Huit Huit", - "url": "http://deuxhuithuit.com/" + "url": "https://deuxhuithuit.com/" }, { "name": "Rik Lomas", @@ -27,7 +27,7 @@ "bugs": { "url": "https://github.com/DeuxHuitHuit/quicksearch/issues" }, - "dependencies": { + "devDependencies": { "grunt": "~0.4.1", "grunt-complexity": "~0.1.0", "grunt-contrib-uglify": "~0.2.7", @@ -37,5 +37,13 @@ "grunt-banner": "~0.2.0", "matchdep": "~0.3.0" }, - "keywords": ["quicksearch"] + "dependencies": { + "jquery": ">=1.4" + }, + "keywords": [ + "jquery-plugin", + "ajax-search", + "search", + "quicksearch" + ] } From e5b738899b6f2f99b5083179ef5f02e66d75dc6e Mon Sep 17 00:00:00 2001 From: Nicolas Brassard Date: Fri, 14 Nov 2014 10:52:22 -0500 Subject: [PATCH 58/58] Added npm link --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index c2436d4..7cc49db 100644 --- a/README.md +++ b/README.md @@ -8,6 +8,7 @@ This plugin is now maintained by [@DeuxHuitHuit][288] ## Project pages * +* * ## Examples