twitter_cldr_js 2.2.2 → 2.2.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (56) hide show
  1. checksums.yaml +4 -4
  2. data/History.txt +5 -0
  3. data/lib/assets/javascripts/twitter_cldr/af.js +28 -30
  4. data/lib/assets/javascripts/twitter_cldr/ar.js +21 -23
  5. data/lib/assets/javascripts/twitter_cldr/be.js +28 -30
  6. data/lib/assets/javascripts/twitter_cldr/bg.js +28 -30
  7. data/lib/assets/javascripts/twitter_cldr/bn.js +26 -28
  8. data/lib/assets/javascripts/twitter_cldr/ca.js +28 -30
  9. data/lib/assets/javascripts/twitter_cldr/cs.js +28 -30
  10. data/lib/assets/javascripts/twitter_cldr/cy.js +26 -28
  11. data/lib/assets/javascripts/twitter_cldr/da.js +28 -30
  12. data/lib/assets/javascripts/twitter_cldr/de.js +28 -30
  13. data/lib/assets/javascripts/twitter_cldr/el.js +28 -30
  14. data/lib/assets/javascripts/twitter_cldr/en-GB.js +26 -29
  15. data/lib/assets/javascripts/twitter_cldr/en.js +21 -23
  16. data/lib/assets/javascripts/twitter_cldr/es.js +26 -29
  17. data/lib/assets/javascripts/twitter_cldr/eu.js +26 -29
  18. data/lib/assets/javascripts/twitter_cldr/fa.js +26 -29
  19. data/lib/assets/javascripts/twitter_cldr/fi.js +26 -29
  20. data/lib/assets/javascripts/twitter_cldr/fil.js +26 -29
  21. data/lib/assets/javascripts/twitter_cldr/fr.js +26 -29
  22. data/lib/assets/javascripts/twitter_cldr/ga.js +26 -29
  23. data/lib/assets/javascripts/twitter_cldr/gl.js +26 -29
  24. data/lib/assets/javascripts/twitter_cldr/he.js +26 -29
  25. data/lib/assets/javascripts/twitter_cldr/hi.js +26 -29
  26. data/lib/assets/javascripts/twitter_cldr/hr.js +26 -29
  27. data/lib/assets/javascripts/twitter_cldr/hu.js +26 -29
  28. data/lib/assets/javascripts/twitter_cldr/id.js +26 -29
  29. data/lib/assets/javascripts/twitter_cldr/is.js +26 -29
  30. data/lib/assets/javascripts/twitter_cldr/it.js +26 -29
  31. data/lib/assets/javascripts/twitter_cldr/ja.js +26 -29
  32. data/lib/assets/javascripts/twitter_cldr/ko.js +26 -29
  33. data/lib/assets/javascripts/twitter_cldr/lv.js +26 -29
  34. data/lib/assets/javascripts/twitter_cldr/msa.js +26 -29
  35. data/lib/assets/javascripts/twitter_cldr/nl.js +26 -29
  36. data/lib/assets/javascripts/twitter_cldr/no.js +26 -29
  37. data/lib/assets/javascripts/twitter_cldr/pl.js +26 -29
  38. data/lib/assets/javascripts/twitter_cldr/pt.js +26 -29
  39. data/lib/assets/javascripts/twitter_cldr/ro.js +26 -29
  40. data/lib/assets/javascripts/twitter_cldr/ru.js +26 -29
  41. data/lib/assets/javascripts/twitter_cldr/sk.js +26 -29
  42. data/lib/assets/javascripts/twitter_cldr/sq.js +26 -29
  43. data/lib/assets/javascripts/twitter_cldr/sr.js +26 -29
  44. data/lib/assets/javascripts/twitter_cldr/sv.js +26 -29
  45. data/lib/assets/javascripts/twitter_cldr/ta.js +26 -29
  46. data/lib/assets/javascripts/twitter_cldr/th.js +26 -29
  47. data/lib/assets/javascripts/twitter_cldr/tr.js +26 -29
  48. data/lib/assets/javascripts/twitter_cldr/uk.js +26 -29
  49. data/lib/assets/javascripts/twitter_cldr/ur.js +26 -29
  50. data/lib/assets/javascripts/twitter_cldr/vi.js +26 -29
  51. data/lib/assets/javascripts/twitter_cldr/zh-cn.js +26 -29
  52. data/lib/assets/javascripts/twitter_cldr/zh-tw.js +26 -29
  53. data/lib/twitter_cldr/js/mustache/calendars/additional_date_format_selector.coffee +1 -1
  54. data/lib/twitter_cldr/js/version.rb +1 -1
  55. data/twitter_cldr_js.gemspec +1 -1
  56. metadata +5 -5
@@ -1,19 +1,18 @@
1
-
2
1
  /*
3
2
  // Copyright 2012 Twitter, Inc
4
3
  // http://www.apache.org/licenses/LICENSE-2.0
5
4
 
6
- // TwitterCLDR (JavaScript) v2.2.1
5
+ // TwitterCLDR (JavaScript) v2.2.3
7
6
  // Authors: Cameron Dutro [@camertron]
8
7
  Kirill Lashuk [@KL_7]
9
8
  portions by Sven Fuchs [@svenfuchs]
10
9
  // Homepage: https://twitter.com
11
10
  // Description: Provides date, time, number, and list formatting functionality for various Twitter-supported locales in Javascript.
12
- */
11
+ */
12
+
13
13
 
14
+ /*<<module_def>>*/
14
15
 
15
- /*-module-*/
16
- /*_lib/twitter_cldr_*/
17
16
 
18
17
  (function() {
19
18
  var TwitterCldr, key, obj, root, _ref, _ref1, _ref2, _ref3,
@@ -289,23 +288,22 @@
289
288
  }
290
289
 
291
290
  DateTimeFormatter.prototype.format = function(obj, options) {
292
- var format_token, token, tokens;
293
- format_token = (function(_this) {
294
- return function(token) {
295
- var result;
296
- result = "";
297
- switch (token.type) {
298
- case "pattern":
299
- return _this.result_for_token(token, obj);
300
- default:
301
- if (token.value.length > 0 && token.value[0] === "'" && token.value[token.value.length - 1] === "'") {
302
- return token.value.substring(1, token.value.length - 1);
303
- } else {
304
- return token.value;
305
- }
306
- }
307
- };
308
- })(this);
291
+ var format_token, token, tokens,
292
+ _this = this;
293
+ format_token = function(token) {
294
+ var result;
295
+ result = "";
296
+ switch (token.type) {
297
+ case "pattern":
298
+ return _this.result_for_token(token, obj);
299
+ default:
300
+ if (token.value.length > 0 && token.value[0] === "'" && token.value[token.value.length - 1] === "'") {
301
+ return token.value.substring(1, token.value.length - 1);
302
+ } else {
303
+ return token.value;
304
+ }
305
+ }
306
+ };
309
307
  tokens = this.get_tokens(obj, options);
310
308
  return ((function() {
311
309
  var _i, _len, _results;
@@ -600,7 +598,7 @@
600
598
 
601
599
  AdditionalDateFormatSelector.prototype.find_closest = function(goal_pattern) {
602
600
  var key, min_key, min_rank, rank, ranks;
603
- if ((goal_pattern == null) || goal_pattern.trim().length === 0) {
601
+ if ((goal_pattern == null) || goal_pattern.replace(/^\s+|\s+$/g, "").length === 0) {
604
602
  return null;
605
603
  } else {
606
604
  ranks = this.rank(goal_pattern);
@@ -1799,13 +1797,13 @@
1799
1797
 
1800
1798
  TwitterCldr.NumberParser = (function() {
1801
1799
  function NumberParser() {
1802
- this.group_separator = ",";
1803
- this.decimal_separator = "\\\.";
1800
+ this.group_separator = " ";
1801
+ this.decimal_separator = ",";
1804
1802
  this.separator_chars = ['\\.', ',', '\\s'].join("");
1805
1803
  }
1806
1804
 
1807
1805
  NumberParser.prototype.parse = function(number_text, options) {
1808
- var num, num_list, punct_list, result, separators, token, tokens, _i, _len;
1806
+ var last, num, num_list, punct_list, result, separators, token, tokens, _i, _len;
1809
1807
  if (options == null) {
1810
1808
  options = {};
1811
1809
  }
@@ -1830,8 +1828,7 @@
1830
1828
  if (!(tokens.slice(-1)[0] && tokens.slice(-1)[0]["type"] === "numeric")) {
1831
1829
  throw "Invalid number";
1832
1830
  }
1833
- debugger;
1834
- if (punct_list.slice(-1)[0] && punct_list.slice(-1)[0]["type"] === "decimal") {
1831
+ if (punct_list.length > 0 && punct_list.slice(-1)[0]["type"] === "decimal") {
1835
1832
  result = parseInt(((function() {
1836
1833
  var _j, _len1, _ref4, _results;
1837
1834
  _ref4 = num_list.slice(0, -1);
@@ -1841,8 +1838,9 @@
1841
1838
  _results.push(num.value);
1842
1839
  }
1843
1840
  return _results;
1844
- })()).join(""));
1845
- return result + parseInt(num_list.slice(-1)[0].value) / Math.pow(10.0, num_list.slice(-1)[0].value.length);
1841
+ })()).join("")) || 0;
1842
+ last = num_list.slice(-1)[0];
1843
+ return result + parseInt(last.value) / Math.pow(10.0, last.value.length);
1846
1844
  } else {
1847
1845
  return parseInt(((function() {
1848
1846
  var _j, _len1, _results;
@@ -1,19 +1,18 @@
1
-
2
1
  /*
3
2
  // Copyright 2012 Twitter, Inc
4
3
  // http://www.apache.org/licenses/LICENSE-2.0
5
4
 
6
- // TwitterCLDR (JavaScript) v2.2.1
5
+ // TwitterCLDR (JavaScript) v2.2.3
7
6
  // Authors: Cameron Dutro [@camertron]
8
7
  Kirill Lashuk [@KL_7]
9
8
  portions by Sven Fuchs [@svenfuchs]
10
9
  // Homepage: https://twitter.com
11
10
  // Description: Provides date, time, number, and list formatting functionality for various Twitter-supported locales in Javascript.
12
- */
11
+ */
12
+
13
13
 
14
+ /*<<module_def>>*/
14
15
 
15
- /*-module-*/
16
- /*_lib/twitter_cldr_*/
17
16
 
18
17
  (function() {
19
18
  var TwitterCldr, key, obj, root, _ref, _ref1, _ref2, _ref3,
@@ -289,23 +288,22 @@
289
288
  }
290
289
 
291
290
  DateTimeFormatter.prototype.format = function(obj, options) {
292
- var format_token, token, tokens;
293
- format_token = (function(_this) {
294
- return function(token) {
295
- var result;
296
- result = "";
297
- switch (token.type) {
298
- case "pattern":
299
- return _this.result_for_token(token, obj);
300
- default:
301
- if (token.value.length > 0 && token.value[0] === "'" && token.value[token.value.length - 1] === "'") {
302
- return token.value.substring(1, token.value.length - 1);
303
- } else {
304
- return token.value;
305
- }
306
- }
307
- };
308
- })(this);
291
+ var format_token, token, tokens,
292
+ _this = this;
293
+ format_token = function(token) {
294
+ var result;
295
+ result = "";
296
+ switch (token.type) {
297
+ case "pattern":
298
+ return _this.result_for_token(token, obj);
299
+ default:
300
+ if (token.value.length > 0 && token.value[0] === "'" && token.value[token.value.length - 1] === "'") {
301
+ return token.value.substring(1, token.value.length - 1);
302
+ } else {
303
+ return token.value;
304
+ }
305
+ }
306
+ };
309
307
  tokens = this.get_tokens(obj, options);
310
308
  return ((function() {
311
309
  var _i, _len, _results;
@@ -600,7 +598,7 @@
600
598
 
601
599
  AdditionalDateFormatSelector.prototype.find_closest = function(goal_pattern) {
602
600
  var key, min_key, min_rank, rank, ranks;
603
- if ((goal_pattern == null) || goal_pattern.trim().length === 0) {
601
+ if ((goal_pattern == null) || goal_pattern.replace(/^\s+|\s+$/g, "").length === 0) {
604
602
  return null;
605
603
  } else {
606
604
  ranks = this.rank(goal_pattern);
@@ -1805,7 +1803,7 @@
1805
1803
  }
1806
1804
 
1807
1805
  NumberParser.prototype.parse = function(number_text, options) {
1808
- var num, num_list, punct_list, result, separators, token, tokens, _i, _len;
1806
+ var last, num, num_list, punct_list, result, separators, token, tokens, _i, _len;
1809
1807
  if (options == null) {
1810
1808
  options = {};
1811
1809
  }
@@ -1830,8 +1828,7 @@
1830
1828
  if (!(tokens.slice(-1)[0] && tokens.slice(-1)[0]["type"] === "numeric")) {
1831
1829
  throw "Invalid number";
1832
1830
  }
1833
- debugger;
1834
- if (punct_list.slice(-1)[0] && punct_list.slice(-1)[0]["type"] === "decimal") {
1831
+ if (punct_list.length > 0 && punct_list.slice(-1)[0]["type"] === "decimal") {
1835
1832
  result = parseInt(((function() {
1836
1833
  var _j, _len1, _ref4, _results;
1837
1834
  _ref4 = num_list.slice(0, -1);
@@ -1841,8 +1838,9 @@
1841
1838
  _results.push(num.value);
1842
1839
  }
1843
1840
  return _results;
1844
- })()).join(""));
1845
- return result + parseInt(num_list.slice(-1)[0].value) / Math.pow(10.0, num_list.slice(-1)[0].value.length);
1841
+ })()).join("")) || 0;
1842
+ last = num_list.slice(-1)[0];
1843
+ return result + parseInt(last.value) / Math.pow(10.0, last.value.length);
1846
1844
  } else {
1847
1845
  return parseInt(((function() {
1848
1846
  var _j, _len1, _results;
@@ -1,19 +1,18 @@
1
-
2
1
  /*
3
2
  // Copyright 2012 Twitter, Inc
4
3
  // http://www.apache.org/licenses/LICENSE-2.0
5
4
 
6
- // TwitterCLDR (JavaScript) v2.2.1
5
+ // TwitterCLDR (JavaScript) v2.2.3
7
6
  // Authors: Cameron Dutro [@camertron]
8
7
  Kirill Lashuk [@KL_7]
9
8
  portions by Sven Fuchs [@svenfuchs]
10
9
  // Homepage: https://twitter.com
11
10
  // Description: Provides date, time, number, and list formatting functionality for various Twitter-supported locales in Javascript.
12
- */
11
+ */
12
+
13
13
 
14
+ /*<<module_def>>*/
14
15
 
15
- /*-module-*/
16
- /*_lib/twitter_cldr_*/
17
16
 
18
17
  (function() {
19
18
  var TwitterCldr, key, obj, root, _ref, _ref1, _ref2, _ref3,
@@ -289,23 +288,22 @@
289
288
  }
290
289
 
291
290
  DateTimeFormatter.prototype.format = function(obj, options) {
292
- var format_token, token, tokens;
293
- format_token = (function(_this) {
294
- return function(token) {
295
- var result;
296
- result = "";
297
- switch (token.type) {
298
- case "pattern":
299
- return _this.result_for_token(token, obj);
300
- default:
301
- if (token.value.length > 0 && token.value[0] === "'" && token.value[token.value.length - 1] === "'") {
302
- return token.value.substring(1, token.value.length - 1);
303
- } else {
304
- return token.value;
305
- }
306
- }
307
- };
308
- })(this);
291
+ var format_token, token, tokens,
292
+ _this = this;
293
+ format_token = function(token) {
294
+ var result;
295
+ result = "";
296
+ switch (token.type) {
297
+ case "pattern":
298
+ return _this.result_for_token(token, obj);
299
+ default:
300
+ if (token.value.length > 0 && token.value[0] === "'" && token.value[token.value.length - 1] === "'") {
301
+ return token.value.substring(1, token.value.length - 1);
302
+ } else {
303
+ return token.value;
304
+ }
305
+ }
306
+ };
309
307
  tokens = this.get_tokens(obj, options);
310
308
  return ((function() {
311
309
  var _i, _len, _results;
@@ -600,7 +598,7 @@
600
598
 
601
599
  AdditionalDateFormatSelector.prototype.find_closest = function(goal_pattern) {
602
600
  var key, min_key, min_rank, rank, ranks;
603
- if ((goal_pattern == null) || goal_pattern.trim().length === 0) {
601
+ if ((goal_pattern == null) || goal_pattern.replace(/^\s+|\s+$/g, "").length === 0) {
604
602
  return null;
605
603
  } else {
606
604
  ranks = this.rank(goal_pattern);
@@ -1799,13 +1797,13 @@
1799
1797
 
1800
1798
  TwitterCldr.NumberParser = (function() {
1801
1799
  function NumberParser() {
1802
- this.group_separator = ",";
1803
- this.decimal_separator = "\\\.";
1800
+ this.group_separator = "\\\.";
1801
+ this.decimal_separator = ",";
1804
1802
  this.separator_chars = ['\\.', ',', '\\s'].join("");
1805
1803
  }
1806
1804
 
1807
1805
  NumberParser.prototype.parse = function(number_text, options) {
1808
- var num, num_list, punct_list, result, separators, token, tokens, _i, _len;
1806
+ var last, num, num_list, punct_list, result, separators, token, tokens, _i, _len;
1809
1807
  if (options == null) {
1810
1808
  options = {};
1811
1809
  }
@@ -1830,8 +1828,7 @@
1830
1828
  if (!(tokens.slice(-1)[0] && tokens.slice(-1)[0]["type"] === "numeric")) {
1831
1829
  throw "Invalid number";
1832
1830
  }
1833
- debugger;
1834
- if (punct_list.slice(-1)[0] && punct_list.slice(-1)[0]["type"] === "decimal") {
1831
+ if (punct_list.length > 0 && punct_list.slice(-1)[0]["type"] === "decimal") {
1835
1832
  result = parseInt(((function() {
1836
1833
  var _j, _len1, _ref4, _results;
1837
1834
  _ref4 = num_list.slice(0, -1);
@@ -1841,8 +1838,9 @@
1841
1838
  _results.push(num.value);
1842
1839
  }
1843
1840
  return _results;
1844
- })()).join(""));
1845
- return result + parseInt(num_list.slice(-1)[0].value) / Math.pow(10.0, num_list.slice(-1)[0].value.length);
1841
+ })()).join("")) || 0;
1842
+ last = num_list.slice(-1)[0];
1843
+ return result + parseInt(last.value) / Math.pow(10.0, last.value.length);
1846
1844
  } else {
1847
1845
  return parseInt(((function() {
1848
1846
  var _j, _len1, _results;
@@ -1,19 +1,18 @@
1
-
2
1
  /*
3
2
  // Copyright 2012 Twitter, Inc
4
3
  // http://www.apache.org/licenses/LICENSE-2.0
5
4
 
6
- // TwitterCLDR (JavaScript) v2.2.1
5
+ // TwitterCLDR (JavaScript) v2.2.3
7
6
  // Authors: Cameron Dutro [@camertron]
8
7
  Kirill Lashuk [@KL_7]
9
8
  portions by Sven Fuchs [@svenfuchs]
10
9
  // Homepage: https://twitter.com
11
10
  // Description: Provides date, time, number, and list formatting functionality for various Twitter-supported locales in Javascript.
12
- */
11
+ */
12
+
13
13
 
14
+ /*<<module_def>>*/
14
15
 
15
- /*-module-*/
16
- /*_lib/twitter_cldr_*/
17
16
 
18
17
  (function() {
19
18
  var TwitterCldr, key, obj, root, _ref, _ref1, _ref2, _ref3,
@@ -289,23 +288,22 @@
289
288
  }
290
289
 
291
290
  DateTimeFormatter.prototype.format = function(obj, options) {
292
- var format_token, token, tokens;
293
- format_token = (function(_this) {
294
- return function(token) {
295
- var result;
296
- result = "";
297
- switch (token.type) {
298
- case "pattern":
299
- return _this.result_for_token(token, obj);
300
- default:
301
- if (token.value.length > 0 && token.value[0] === "'" && token.value[token.value.length - 1] === "'") {
302
- return token.value.substring(1, token.value.length - 1);
303
- } else {
304
- return token.value;
305
- }
306
- }
307
- };
308
- })(this);
291
+ var format_token, token, tokens,
292
+ _this = this;
293
+ format_token = function(token) {
294
+ var result;
295
+ result = "";
296
+ switch (token.type) {
297
+ case "pattern":
298
+ return _this.result_for_token(token, obj);
299
+ default:
300
+ if (token.value.length > 0 && token.value[0] === "'" && token.value[token.value.length - 1] === "'") {
301
+ return token.value.substring(1, token.value.length - 1);
302
+ } else {
303
+ return token.value;
304
+ }
305
+ }
306
+ };
309
307
  tokens = this.get_tokens(obj, options);
310
308
  return ((function() {
311
309
  var _i, _len, _results;
@@ -600,7 +598,7 @@
600
598
 
601
599
  AdditionalDateFormatSelector.prototype.find_closest = function(goal_pattern) {
602
600
  var key, min_key, min_rank, rank, ranks;
603
- if ((goal_pattern == null) || goal_pattern.trim().length === 0) {
601
+ if ((goal_pattern == null) || goal_pattern.replace(/^\s+|\s+$/g, "").length === 0) {
604
602
  return null;
605
603
  } else {
606
604
  ranks = this.rank(goal_pattern);
@@ -1799,13 +1797,13 @@
1799
1797
 
1800
1798
  TwitterCldr.NumberParser = (function() {
1801
1799
  function NumberParser() {
1802
- this.group_separator = ",";
1803
- this.decimal_separator = "\\\.";
1800
+ this.group_separator = "\\\.";
1801
+ this.decimal_separator = ",";
1804
1802
  this.separator_chars = ['\\.', ',', '\\s'].join("");
1805
1803
  }
1806
1804
 
1807
1805
  NumberParser.prototype.parse = function(number_text, options) {
1808
- var num, num_list, punct_list, result, separators, token, tokens, _i, _len;
1806
+ var last, num, num_list, punct_list, result, separators, token, tokens, _i, _len;
1809
1807
  if (options == null) {
1810
1808
  options = {};
1811
1809
  }
@@ -1830,8 +1828,7 @@
1830
1828
  if (!(tokens.slice(-1)[0] && tokens.slice(-1)[0]["type"] === "numeric")) {
1831
1829
  throw "Invalid number";
1832
1830
  }
1833
- debugger;
1834
- if (punct_list.slice(-1)[0] && punct_list.slice(-1)[0]["type"] === "decimal") {
1831
+ if (punct_list.length > 0 && punct_list.slice(-1)[0]["type"] === "decimal") {
1835
1832
  result = parseInt(((function() {
1836
1833
  var _j, _len1, _ref4, _results;
1837
1834
  _ref4 = num_list.slice(0, -1);
@@ -1841,8 +1838,9 @@
1841
1838
  _results.push(num.value);
1842
1839
  }
1843
1840
  return _results;
1844
- })()).join(""));
1845
- return result + parseInt(num_list.slice(-1)[0].value) / Math.pow(10.0, num_list.slice(-1)[0].value.length);
1841
+ })()).join("")) || 0;
1842
+ last = num_list.slice(-1)[0];
1843
+ return result + parseInt(last.value) / Math.pow(10.0, last.value.length);
1846
1844
  } else {
1847
1845
  return parseInt(((function() {
1848
1846
  var _j, _len1, _results;
@@ -1,19 +1,18 @@
1
-
2
1
  /*
3
2
  // Copyright 2012 Twitter, Inc
4
3
  // http://www.apache.org/licenses/LICENSE-2.0
5
4
 
6
- // TwitterCLDR (JavaScript) v2.2.1
5
+ // TwitterCLDR (JavaScript) v2.2.3
7
6
  // Authors: Cameron Dutro [@camertron]
8
7
  Kirill Lashuk [@KL_7]
9
8
  portions by Sven Fuchs [@svenfuchs]
10
9
  // Homepage: https://twitter.com
11
10
  // Description: Provides date, time, number, and list formatting functionality for various Twitter-supported locales in Javascript.
12
- */
11
+ */
12
+
13
13
 
14
+ /*<<module_def>>*/
14
15
 
15
- /*-module-*/
16
- /*_lib/twitter_cldr_*/
17
16
 
18
17
  (function() {
19
18
  var TwitterCldr, key, obj, root, _ref, _ref1, _ref2, _ref3,
@@ -289,23 +288,22 @@
289
288
  }
290
289
 
291
290
  DateTimeFormatter.prototype.format = function(obj, options) {
292
- var format_token, token, tokens;
293
- format_token = (function(_this) {
294
- return function(token) {
295
- var result;
296
- result = "";
297
- switch (token.type) {
298
- case "pattern":
299
- return _this.result_for_token(token, obj);
300
- default:
301
- if (token.value.length > 0 && token.value[0] === "'" && token.value[token.value.length - 1] === "'") {
302
- return token.value.substring(1, token.value.length - 1);
303
- } else {
304
- return token.value;
305
- }
306
- }
307
- };
308
- })(this);
291
+ var format_token, token, tokens,
292
+ _this = this;
293
+ format_token = function(token) {
294
+ var result;
295
+ result = "";
296
+ switch (token.type) {
297
+ case "pattern":
298
+ return _this.result_for_token(token, obj);
299
+ default:
300
+ if (token.value.length > 0 && token.value[0] === "'" && token.value[token.value.length - 1] === "'") {
301
+ return token.value.substring(1, token.value.length - 1);
302
+ } else {
303
+ return token.value;
304
+ }
305
+ }
306
+ };
309
307
  tokens = this.get_tokens(obj, options);
310
308
  return ((function() {
311
309
  var _i, _len, _results;
@@ -600,7 +598,7 @@
600
598
 
601
599
  AdditionalDateFormatSelector.prototype.find_closest = function(goal_pattern) {
602
600
  var key, min_key, min_rank, rank, ranks;
603
- if ((goal_pattern == null) || goal_pattern.trim().length === 0) {
601
+ if ((goal_pattern == null) || goal_pattern.replace(/^\s+|\s+$/g, "").length === 0) {
604
602
  return null;
605
603
  } else {
606
604
  ranks = this.rank(goal_pattern);
@@ -1799,13 +1797,13 @@
1799
1797
 
1800
1798
  TwitterCldr.NumberParser = (function() {
1801
1799
  function NumberParser() {
1802
- this.group_separator = ",";
1803
- this.decimal_separator = "\\\.";
1800
+ this.group_separator = "\\\.";
1801
+ this.decimal_separator = ",";
1804
1802
  this.separator_chars = ['\\.', ',', '\\s'].join("");
1805
1803
  }
1806
1804
 
1807
1805
  NumberParser.prototype.parse = function(number_text, options) {
1808
- var num, num_list, punct_list, result, separators, token, tokens, _i, _len;
1806
+ var last, num, num_list, punct_list, result, separators, token, tokens, _i, _len;
1809
1807
  if (options == null) {
1810
1808
  options = {};
1811
1809
  }
@@ -1830,8 +1828,7 @@
1830
1828
  if (!(tokens.slice(-1)[0] && tokens.slice(-1)[0]["type"] === "numeric")) {
1831
1829
  throw "Invalid number";
1832
1830
  }
1833
- debugger;
1834
- if (punct_list.slice(-1)[0] && punct_list.slice(-1)[0]["type"] === "decimal") {
1831
+ if (punct_list.length > 0 && punct_list.slice(-1)[0]["type"] === "decimal") {
1835
1832
  result = parseInt(((function() {
1836
1833
  var _j, _len1, _ref4, _results;
1837
1834
  _ref4 = num_list.slice(0, -1);
@@ -1841,8 +1838,9 @@
1841
1838
  _results.push(num.value);
1842
1839
  }
1843
1840
  return _results;
1844
- })()).join(""));
1845
- return result + parseInt(num_list.slice(-1)[0].value) / Math.pow(10.0, num_list.slice(-1)[0].value.length);
1841
+ })()).join("")) || 0;
1842
+ last = num_list.slice(-1)[0];
1843
+ return result + parseInt(last.value) / Math.pow(10.0, last.value.length);
1846
1844
  } else {
1847
1845
  return parseInt(((function() {
1848
1846
  var _j, _len1, _results;
@@ -1,19 +1,18 @@
1
-
2
1
  /*
3
2
  // Copyright 2012 Twitter, Inc
4
3
  // http://www.apache.org/licenses/LICENSE-2.0
5
4
 
6
- // TwitterCLDR (JavaScript) v2.2.1
5
+ // TwitterCLDR (JavaScript) v2.2.3
7
6
  // Authors: Cameron Dutro [@camertron]
8
7
  Kirill Lashuk [@KL_7]
9
8
  portions by Sven Fuchs [@svenfuchs]
10
9
  // Homepage: https://twitter.com
11
10
  // Description: Provides date, time, number, and list formatting functionality for various Twitter-supported locales in Javascript.
12
- */
11
+ */
12
+
13
13
 
14
+ /*<<module_def>>*/
14
15
 
15
- /*-module-*/
16
- /*_lib/twitter_cldr_*/
17
16
 
18
17
  (function() {
19
18
  var TwitterCldr, key, obj, root, _ref, _ref1, _ref2, _ref3,
@@ -289,23 +288,22 @@
289
288
  }
290
289
 
291
290
  DateTimeFormatter.prototype.format = function(obj, options) {
292
- var format_token, token, tokens;
293
- format_token = (function(_this) {
294
- return function(token) {
295
- var result;
296
- result = "";
297
- switch (token.type) {
298
- case "pattern":
299
- return _this.result_for_token(token, obj);
300
- default:
301
- if (token.value.length > 0 && token.value[0] === "'" && token.value[token.value.length - 1] === "'") {
302
- return token.value.substring(1, token.value.length - 1);
303
- } else {
304
- return token.value;
305
- }
306
- }
307
- };
308
- })(this);
291
+ var format_token, token, tokens,
292
+ _this = this;
293
+ format_token = function(token) {
294
+ var result;
295
+ result = "";
296
+ switch (token.type) {
297
+ case "pattern":
298
+ return _this.result_for_token(token, obj);
299
+ default:
300
+ if (token.value.length > 0 && token.value[0] === "'" && token.value[token.value.length - 1] === "'") {
301
+ return token.value.substring(1, token.value.length - 1);
302
+ } else {
303
+ return token.value;
304
+ }
305
+ }
306
+ };
309
307
  tokens = this.get_tokens(obj, options);
310
308
  return ((function() {
311
309
  var _i, _len, _results;
@@ -600,7 +598,7 @@
600
598
 
601
599
  AdditionalDateFormatSelector.prototype.find_closest = function(goal_pattern) {
602
600
  var key, min_key, min_rank, rank, ranks;
603
- if ((goal_pattern == null) || goal_pattern.trim().length === 0) {
601
+ if ((goal_pattern == null) || goal_pattern.replace(/^\s+|\s+$/g, "").length === 0) {
604
602
  return null;
605
603
  } else {
606
604
  ranks = this.rank(goal_pattern);
@@ -1797,8 +1795,6 @@
1797
1795
 
1798
1796
  })();
1799
1797
 
1800
- TwitterCldr = {};
1801
-
1802
1798
  TwitterCldr.NumberParser = (function() {
1803
1799
  function NumberParser() {
1804
1800
  this.group_separator = ",";
@@ -1807,7 +1803,7 @@
1807
1803
  }
1808
1804
 
1809
1805
  NumberParser.prototype.parse = function(number_text, options) {
1810
- var num, num_list, punct_list, result, separators, token, tokens, _i, _len;
1806
+ var last, num, num_list, punct_list, result, separators, token, tokens, _i, _len;
1811
1807
  if (options == null) {
1812
1808
  options = {};
1813
1809
  }
@@ -1832,7 +1828,7 @@
1832
1828
  if (!(tokens.slice(-1)[0] && tokens.slice(-1)[0]["type"] === "numeric")) {
1833
1829
  throw "Invalid number";
1834
1830
  }
1835
- if (punct_list.slice(-1)[0] && punct_list.slice(-1)[0]["type"] === "decimal") {
1831
+ if (punct_list.length > 0 && punct_list.slice(-1)[0]["type"] === "decimal") {
1836
1832
  result = parseInt(((function() {
1837
1833
  var _j, _len1, _ref4, _results;
1838
1834
  _ref4 = num_list.slice(0, -1);
@@ -1842,8 +1838,9 @@
1842
1838
  _results.push(num.value);
1843
1839
  }
1844
1840
  return _results;
1845
- })()).join(""));
1846
- return result + parseInt(num_list.slice(-1)[0].value) / Math.pow(10.0, num_list.slice(-1)[0].value.length);
1841
+ })()).join("")) || 0;
1842
+ last = num_list.slice(-1)[0];
1843
+ return result + parseInt(last.value) / Math.pow(10.0, last.value.length);
1847
1844
  } else {
1848
1845
  return parseInt(((function() {
1849
1846
  var _j, _len1, _results;