twitter_cldr_js 2.2.2 → 2.2.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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);
@@ -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;
@@ -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;
@@ -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;
@@ -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;
@@ -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;
@@ -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;