From 5ec201ca3031d31b02772315d72d521ee1b174c9 Mon Sep 17 00:00:00 2001 From: Kevin Brown Date: Wed, 19 Nov 2014 17:48:46 -0500 Subject: [PATCH] Built out the translations This migrates over the required English translations under their new names. The "Searching" message has also been adjusted to use "Searching..." instead of "Loading more results...", which is what it used to say sometimes. This also changes the AJAX handler to call `abort` when needed. --- dist/js/i18n/en.js | 2 +- dist/js/select2.amd.full.js | 120 ++++++++++++++++++++----------- dist/js/select2.amd.js | 120 ++++++++++++++++++++----------- dist/js/select2.full.js | 120 ++++++++++++++++++++----------- dist/js/select2.full.min.js | 4 +- dist/js/select2.js | 120 ++++++++++++++++++++----------- dist/js/select2.min.js | 2 +- src/js/select2/data/ajax.js | 7 ++ src/js/select2/i18n/en.js | 26 +++++++ src/js/select2/results.js | 2 +- src/js/select2/selection/base.js | 5 +- 11 files changed, 349 insertions(+), 179 deletions(-) diff --git a/dist/js/i18n/en.js b/dist/js/i18n/en.js index b8d2a144..fb3c59d5 100644 --- a/dist/js/i18n/en.js +++ b/dist/js/i18n/en.js @@ -1 +1 @@ -window.$=window.$||{},function(){$&&$.fn&&$.fn.select2&&$.fn.select2.amd&&(define=$.fn.select2.amd.define,require=$.fn.select2.amd.require),define("select2/i18n/en",[],function(){return{inputTooShort:function(e){var t=e.minimum-e.input.length,n="Please enter "+t+" or more character";return t!=1&&(n+="s"),n},loadingMore:function(){return"Loading more results…"},noResults:function(){return"No results found"}}}),require("jquery.select2"),$.fn.select2.amd={define:define,require:require}}(); \ No newline at end of file +window.$=window.$||{},function(){$&&$.fn&&$.fn.select2&&$.fn.select2.amd&&(define=$.fn.select2.amd.define,require=$.fn.select2.amd.require),define("select2/i18n/en",[],function(){return{errorLoading:function(){return"The results could not be loaded."},inputTooLong:function(e){var t=e.input.length-e.maximum,n="Please delete "+t+" character";return t!=1&&(n+="s"),n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="Please enter "+t+" or more character";return t!=1&&(n+="s"),n},searching:function(){return"Searching…"},loadingMore:function(){return"Loading more results…"},maximumSelected:function(e){var t="You can only select"+e.maximum+" item";return e.maximum!=1&&(t+="s"),t},noResults:function(){return"No results found"}}}),require("jquery.select2"),$.fn.select2.amd={define:define,require:require}}(); \ No newline at end of file diff --git a/dist/js/select2.amd.full.js b/dist/js/select2.amd.full.js index 116bbc2a..92d3265e 100644 --- a/dist/js/select2.amd.full.js +++ b/dist/js/select2.amd.full.js @@ -267,7 +267,7 @@ define('select2/results',[ Results.prototype.showLoading = function (params) { this.hideLoading(); - var loadingMore = this.options.get('translations').get('loadingMore'); + var loadingMore = this.options.get('translations').get('searching'); var loading = { disabled: true, @@ -578,9 +578,50 @@ define('select2/results',[ return Results; }); +define('select2/keys',[ + +], function () { + var KEYS = { + BACKSPACE: 8, + TAB: 9, + ENTER: 13, + SHIFT: 16, + CTRL: 17, + ALT: 18, + ESC: 27, + SPACE: 32, + PAGE_UP: 33, + PAGE_DOWN: 34, + END: 35, + HOME: 36, + LEFT: 37, + UP: 38, + RIGHT: 39, + DOWN: 40, + DELETE: 46, + + isArrow: function (k) { + k = k.which ? k.which : k; + + switch (k) { + case KEY.LEFT: + case KEY.RIGHT: + case KEY.UP: + case KEY.DOWN: + return true; + } + + return false; + } + }; + + return KEYS; +}); + define('select2/selection/base',[ - '../utils' -], function (Utils) { + '../utils', + '../keys' +], function (Utils, KEYS) { function BaseSelection ($element, options) { this.$element = $element; this.options = options; @@ -666,46 +707,6 @@ define('select2/selection/base',[ return BaseSelection; }); -define('select2/keys',[ - -], function () { - var KEYS = { - BACKSPACE: 8, - TAB: 9, - ENTER: 13, - SHIFT: 16, - CTRL: 17, - ALT: 18, - ESC: 27, - SPACE: 32, - PAGE_UP: 33, - PAGE_DOWN: 34, - END: 35, - HOME: 36, - LEFT: 37, - UP: 38, - RIGHT: 39, - DOWN: 40, - DELETE: 46, - - isArrow: function (k) { - k = k.which ? k.which : k; - - switch (k) { - case KEY.LEFT: - case KEY.RIGHT: - case KEY.UP: - case KEY.DOWN: - return true; - } - - return false; - } - }; - - return KEYS; -}); - define('select2/selection/single',[ './base', '../utils', @@ -1341,6 +1342,11 @@ define('select2/data/ajax',[ var matches = []; var self = this; + if (this._request) { + this._request.abort(); + this._request = null; + } + var options = $.extend({ type: 'GET' }, this.ajaxOptions); @@ -1361,6 +1367,8 @@ define('select2/data/ajax',[ callback(results); }); + + self._request = $request; } if (this.ajaxOptions.delay && params.term !== '') { @@ -1750,6 +1758,20 @@ define('select2/dropdown/infiniteScroll',[ define('select2/i18n/en',[],function () { return { + errorLoading: function () { + return 'The results could not be loaded.'; + }, + inputTooLong: function (args) { + var overChars = args.input.length - args.maximum; + + var message = 'Please delete ' + overChars + ' character'; + + if (overChars != 1) { + message += 's'; + } + + return message; + }, inputTooShort: function (args) { var remainingChars = args.minimum - args.input.length; @@ -1761,9 +1783,21 @@ define('select2/i18n/en',[],function () { return message; }, + searching: function () { + return 'Searching…'; + }, loadingMore: function () { return 'Loading more results…'; }, + maximumSelected: function (args) { + var message = 'You can only select' + args.maximum + ' item'; + + if (args.maximum != 1) { + message += 's'; + } + + return message; + }, noResults: function () { return 'No results found'; } diff --git a/dist/js/select2.amd.js b/dist/js/select2.amd.js index 7169bd9e..05593457 100644 --- a/dist/js/select2.amd.js +++ b/dist/js/select2.amd.js @@ -267,7 +267,7 @@ define('select2/results',[ Results.prototype.showLoading = function (params) { this.hideLoading(); - var loadingMore = this.options.get('translations').get('loadingMore'); + var loadingMore = this.options.get('translations').get('searching'); var loading = { disabled: true, @@ -578,9 +578,50 @@ define('select2/results',[ return Results; }); +define('select2/keys',[ + +], function () { + var KEYS = { + BACKSPACE: 8, + TAB: 9, + ENTER: 13, + SHIFT: 16, + CTRL: 17, + ALT: 18, + ESC: 27, + SPACE: 32, + PAGE_UP: 33, + PAGE_DOWN: 34, + END: 35, + HOME: 36, + LEFT: 37, + UP: 38, + RIGHT: 39, + DOWN: 40, + DELETE: 46, + + isArrow: function (k) { + k = k.which ? k.which : k; + + switch (k) { + case KEY.LEFT: + case KEY.RIGHT: + case KEY.UP: + case KEY.DOWN: + return true; + } + + return false; + } + }; + + return KEYS; +}); + define('select2/selection/base',[ - '../utils' -], function (Utils) { + '../utils', + '../keys' +], function (Utils, KEYS) { function BaseSelection ($element, options) { this.$element = $element; this.options = options; @@ -666,46 +707,6 @@ define('select2/selection/base',[ return BaseSelection; }); -define('select2/keys',[ - -], function () { - var KEYS = { - BACKSPACE: 8, - TAB: 9, - ENTER: 13, - SHIFT: 16, - CTRL: 17, - ALT: 18, - ESC: 27, - SPACE: 32, - PAGE_UP: 33, - PAGE_DOWN: 34, - END: 35, - HOME: 36, - LEFT: 37, - UP: 38, - RIGHT: 39, - DOWN: 40, - DELETE: 46, - - isArrow: function (k) { - k = k.which ? k.which : k; - - switch (k) { - case KEY.LEFT: - case KEY.RIGHT: - case KEY.UP: - case KEY.DOWN: - return true; - } - - return false; - } - }; - - return KEYS; -}); - define('select2/selection/single',[ './base', '../utils', @@ -1341,6 +1342,11 @@ define('select2/data/ajax',[ var matches = []; var self = this; + if (this._request) { + this._request.abort(); + this._request = null; + } + var options = $.extend({ type: 'GET' }, this.ajaxOptions); @@ -1361,6 +1367,8 @@ define('select2/data/ajax',[ callback(results); }); + + self._request = $request; } if (this.ajaxOptions.delay && params.term !== '') { @@ -1750,6 +1758,20 @@ define('select2/dropdown/infiniteScroll',[ define('select2/i18n/en',[],function () { return { + errorLoading: function () { + return 'The results could not be loaded.'; + }, + inputTooLong: function (args) { + var overChars = args.input.length - args.maximum; + + var message = 'Please delete ' + overChars + ' character'; + + if (overChars != 1) { + message += 's'; + } + + return message; + }, inputTooShort: function (args) { var remainingChars = args.minimum - args.input.length; @@ -1761,9 +1783,21 @@ define('select2/i18n/en',[],function () { return message; }, + searching: function () { + return 'Searching…'; + }, loadingMore: function () { return 'Loading more results…'; }, + maximumSelected: function (args) { + var message = 'You can only select' + args.maximum + ' item'; + + if (args.maximum != 1) { + message += 's'; + } + + return message; + }, noResults: function () { return 'No results found'; } diff --git a/dist/js/select2.full.js b/dist/js/select2.full.js index c7488613..6866b1ae 100644 --- a/dist/js/select2.full.js +++ b/dist/js/select2.full.js @@ -9802,7 +9802,7 @@ define('select2/results',[ Results.prototype.showLoading = function (params) { this.hideLoading(); - var loadingMore = this.options.get('translations').get('loadingMore'); + var loadingMore = this.options.get('translations').get('searching'); var loading = { disabled: true, @@ -10113,9 +10113,50 @@ define('select2/results',[ return Results; }); +define('select2/keys',[ + +], function () { + var KEYS = { + BACKSPACE: 8, + TAB: 9, + ENTER: 13, + SHIFT: 16, + CTRL: 17, + ALT: 18, + ESC: 27, + SPACE: 32, + PAGE_UP: 33, + PAGE_DOWN: 34, + END: 35, + HOME: 36, + LEFT: 37, + UP: 38, + RIGHT: 39, + DOWN: 40, + DELETE: 46, + + isArrow: function (k) { + k = k.which ? k.which : k; + + switch (k) { + case KEY.LEFT: + case KEY.RIGHT: + case KEY.UP: + case KEY.DOWN: + return true; + } + + return false; + } + }; + + return KEYS; +}); + define('select2/selection/base',[ - '../utils' -], function (Utils) { + '../utils', + '../keys' +], function (Utils, KEYS) { function BaseSelection ($element, options) { this.$element = $element; this.options = options; @@ -10201,46 +10242,6 @@ define('select2/selection/base',[ return BaseSelection; }); -define('select2/keys',[ - -], function () { - var KEYS = { - BACKSPACE: 8, - TAB: 9, - ENTER: 13, - SHIFT: 16, - CTRL: 17, - ALT: 18, - ESC: 27, - SPACE: 32, - PAGE_UP: 33, - PAGE_DOWN: 34, - END: 35, - HOME: 36, - LEFT: 37, - UP: 38, - RIGHT: 39, - DOWN: 40, - DELETE: 46, - - isArrow: function (k) { - k = k.which ? k.which : k; - - switch (k) { - case KEY.LEFT: - case KEY.RIGHT: - case KEY.UP: - case KEY.DOWN: - return true; - } - - return false; - } - }; - - return KEYS; -}); - define('select2/selection/single',[ './base', '../utils', @@ -10876,6 +10877,11 @@ define('select2/data/ajax',[ var matches = []; var self = this; + if (this._request) { + this._request.abort(); + this._request = null; + } + var options = $.extend({ type: 'GET' }, this.ajaxOptions); @@ -10896,6 +10902,8 @@ define('select2/data/ajax',[ callback(results); }); + + self._request = $request; } if (this.ajaxOptions.delay && params.term !== '') { @@ -11285,6 +11293,20 @@ define('select2/dropdown/infiniteScroll',[ define('select2/i18n/en',[],function () { return { + errorLoading: function () { + return 'The results could not be loaded.'; + }, + inputTooLong: function (args) { + var overChars = args.input.length - args.maximum; + + var message = 'Please delete ' + overChars + ' character'; + + if (overChars != 1) { + message += 's'; + } + + return message; + }, inputTooShort: function (args) { var remainingChars = args.minimum - args.input.length; @@ -11296,9 +11318,21 @@ define('select2/i18n/en',[],function () { return message; }, + searching: function () { + return 'Searching…'; + }, loadingMore: function () { return 'Loading more results…'; }, + maximumSelected: function (args) { + var message = 'You can only select' + args.maximum + ' item'; + + if (args.maximum != 1) { + message += 's'; + } + + return message; + }, noResults: function () { return 'No results found'; } diff --git a/dist/js/select2.full.min.js b/dist/js/select2.full.min.js index 29661d02..deba71d7 100644 --- a/dist/js/select2.full.min.js +++ b/dist/js/select2.full.min.js @@ -1,4 +1,4 @@ window.$=window.$||{},function(){$&&$.fn&&$.fn.select2&&$.fn.select2.amd&&(c=$.fn.select2.amd.define,b=$.fn.select2.amd.require);var a,b,c;!function(d){function e(a,b){return u.call(a,b)}function f(a,b){var c,d,e,f,g,h,i,j,k,l,m,n=b&&b.split("/"),o=s.map,p=o&&o["*"]||{};if(a&&"."===a.charAt(0))if(b){for(n=n.slice(0,n.length-1),a=a.split("/"),g=a.length-1,s.nodeIdCompat&&w.test(a[g])&&(a[g]=a[g].replace(w,"")),a=n.concat(a),k=0;k0&&(a.splice(k-1,2),k-=2)}a=a.join("/")}else 0===a.indexOf("./")&&(a=a.substring(2));if((n||p)&&o){for(c=a.split("/"),k=c.length;k>0;k-=1){if(d=c.slice(0,k).join("/"),n)for(l=n.length;l>0;l-=1)if(e=o[n.slice(0,l).join("/")],e&&(e=e[d])){f=e,h=k;break}if(f)break;!i&&p&&p[d]&&(i=p[d],j=k)}!f&&i&&(f=i,h=j),f&&(c.splice(0,h,f),a=c.join("/"))}return a}function g(a,b){return function(){return n.apply(d,v.call(arguments,0).concat([a,b]))}}function h(a){return function(b){return f(b,a)}}function i(a){return function(b){q[a]=b}}function j(a){if(e(r,a)){var b=r[a];delete r[a],t[a]=!0,m.apply(d,b)}if(!e(q,a)&&!e(t,a))throw new Error("No "+a);return q[a]}function k(a){var b,c=a?a.indexOf("!"):-1;return c>-1&&(b=a.substring(0,c),a=a.substring(c+1,a.length)),[b,a]}function l(a){return function(){return s&&s.config&&s.config[a]||{}}}var m,n,o,p,q={},r={},s={},t={},u=Object.prototype.hasOwnProperty,v=[].slice,w=/\.js$/;o=function(a,b){var c,d=k(a),e=d[0];return a=d[1],e&&(e=f(e,b),c=j(e)),e?a=c&&c.normalize?c.normalize(a,h(b)):f(a,b):(a=f(a,b),d=k(a),e=d[0],a=d[1],e&&(c=j(e))),{f:e?e+"!"+a:a,n:a,pr:e,p:c}},p={require:function(a){return g(a)},exports:function(a){var b=q[a];return"undefined"!=typeof b?b:q[a]={}},module:function(a){return{id:a,uri:"",exports:q[a],config:l(a)}}},m=function(a,b,c,f){var h,k,l,m,n,s,u=[],v=typeof c;if(f=f||a,"undefined"===v||"function"===v){for(b=!b.length&&c.length?["require","exports","module"]:b,n=0;n0&&b-1 in a}function e(a,b,c){if(bb.isFunction(b))return bb.grep(a,function(a,d){return!!b.call(a,d,a)!==c});if(b.nodeType)return bb.grep(a,function(a){return a===b!==c});if("string"==typeof b){if(ib.test(b))return bb.filter(b,a,c);b=bb.filter(b,a)}return bb.grep(a,function(a){return V.call(b,a)>=0!==c})}function f(a,b){for(;(a=a[b])&&1!==a.nodeType;);return a}function g(a){var b=pb[a]={};return bb.each(a.match(ob)||[],function(a,c){b[c]=!0}),b}function h(){_.removeEventListener("DOMContentLoaded",h,!1),a.removeEventListener("load",h,!1),bb.ready()}function i(){Object.defineProperty(this.cache={},0,{get:function(){return{}}}),this.expando=bb.expando+Math.random()}function j(a,b,c){var d;if(void 0===c&&1===a.nodeType)if(d="data-"+b.replace(vb,"-$1").toLowerCase(),c=a.getAttribute(d),"string"==typeof c){try{c="true"===c?!0:"false"===c?!1:"null"===c?null:+c+""===c?+c:ub.test(c)?bb.parseJSON(c):c}catch(e){}tb.set(a,b,c)}else c=void 0;return c}function k(){return!0}function l(){return!1}function m(){try{return _.activeElement}catch(a){}}function n(a,b){return bb.nodeName(a,"table")&&bb.nodeName(11!==b.nodeType?b:b.firstChild,"tr")?a.getElementsByTagName("tbody")[0]||a.appendChild(a.ownerDocument.createElement("tbody")):a}function o(a){return a.type=(null!==a.getAttribute("type"))+"/"+a.type,a}function p(a){var b=Lb.exec(a.type);return b?a.type=b[1]:a.removeAttribute("type"),a}function q(a,b){for(var c=0,d=a.length;d>c;c++)sb.set(a[c],"globalEval",!b||sb.get(b[c],"globalEval"))}function r(a,b){var c,d,e,f,g,h,i,j;if(1===b.nodeType){if(sb.hasData(a)&&(f=sb.access(a),g=sb.set(b,f),j=f.events)){delete g.handle,g.events={};for(e in j)for(c=0,d=j[e].length;d>c;c++)bb.event.add(b,e,j[e][c])}tb.hasData(a)&&(h=tb.access(a),i=bb.extend({},h),tb.set(b,i))}}function s(a,b){var c=a.getElementsByTagName?a.getElementsByTagName(b||"*"):a.querySelectorAll?a.querySelectorAll(b||"*"):[];return void 0===b||b&&bb.nodeName(a,b)?bb.merge([a],c):c}function t(a,b){var c=b.nodeName.toLowerCase();"input"===c&&zb.test(a.type)?b.checked=a.checked:("input"===c||"textarea"===c)&&(b.defaultValue=a.defaultValue)}function u(b,c){var d=bb(c.createElement(b)).appendTo(c.body),e=a.getDefaultComputedStyle?a.getDefaultComputedStyle(d[0]).display:bb.css(d[0],"display");return d.detach(),e}function v(a){var b=_,c=Pb[a];return c||(c=u(a,b),"none"!==c&&c||(Ob=(Ob||bb("