rails-timeago 2.14.0 → 2.19.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (90) hide show
  1. checksums.yaml +5 -5
  2. data/.rubocop.yml +53 -0
  3. data/.travis.yml +7 -9
  4. data/CHANGELOG.md +26 -0
  5. data/Gemfile +9 -2
  6. data/README.md +12 -14
  7. data/Rakefile +14 -12
  8. data/lib/assets/javascripts/rails-timeago-all.js +8 -0
  9. data/lib/assets/javascripts/rails-timeago.js +4 -2
  10. data/lib/rails-timeago.rb +21 -17
  11. data/lib/rails-timeago/helper.rb +13 -10
  12. data/lib/rails-timeago/version.rb +3 -1
  13. data/rails-timeago.gemspec +13 -12
  14. data/spec/rails-timeago_spec.rb +46 -0
  15. data/spec/spec_helper.rb +17 -0
  16. data/spec/support/assets/javascripts/jquery.js +4 -0
  17. data/spec/support/stub.rb +75 -4
  18. data/spec/timeago/helper_spec.rb +157 -110
  19. data/vendor/assets/javascripts/jquery.timeago.js +14 -7
  20. data/vendor/assets/javascripts/locales/jquery.timeago.af.js +30 -20
  21. data/vendor/assets/javascripts/locales/jquery.timeago.am.js +30 -0
  22. data/vendor/assets/javascripts/locales/jquery.timeago.ar.js +13 -5
  23. data/vendor/assets/javascripts/locales/jquery.timeago.az-short.js +30 -0
  24. data/vendor/assets/javascripts/locales/jquery.timeago.az.js +30 -0
  25. data/vendor/assets/javascripts/locales/jquery.timeago.be.js +43 -0
  26. data/vendor/assets/javascripts/locales/jquery.timeago.bg.js +28 -18
  27. data/vendor/assets/javascripts/locales/jquery.timeago.bs.js +13 -7
  28. data/vendor/assets/javascripts/locales/jquery.timeago.ca.js +30 -18
  29. data/vendor/assets/javascripts/locales/jquery.timeago.cs.js +34 -24
  30. data/vendor/assets/javascripts/locales/jquery.timeago.cy.js +30 -20
  31. data/vendor/assets/javascripts/locales/jquery.timeago.da.js +28 -18
  32. data/vendor/assets/javascripts/locales/jquery.timeago.de-short.js +30 -20
  33. data/vendor/assets/javascripts/locales/jquery.timeago.de.js +29 -18
  34. data/vendor/assets/javascripts/locales/jquery.timeago.dv.js +32 -22
  35. data/vendor/assets/javascripts/locales/jquery.timeago.el.js +28 -18
  36. data/vendor/assets/javascripts/locales/jquery.timeago.en-short.js +30 -20
  37. data/vendor/assets/javascripts/locales/jquery.timeago.eo.js +30 -0
  38. data/vendor/assets/javascripts/locales/jquery.timeago.es-short.js +31 -20
  39. data/vendor/assets/javascripts/locales/jquery.timeago.es.js +29 -18
  40. data/vendor/assets/javascripts/locales/jquery.timeago.et.js +28 -18
  41. data/vendor/assets/javascripts/locales/jquery.timeago.eu.js +28 -17
  42. data/vendor/assets/javascripts/locales/jquery.timeago.fa-short.js +30 -20
  43. data/vendor/assets/javascripts/locales/jquery.timeago.fa.js +32 -22
  44. data/vendor/assets/javascripts/locales/jquery.timeago.fi.js +38 -28
  45. data/vendor/assets/javascripts/locales/jquery.timeago.fr-short.js +26 -16
  46. data/vendor/assets/javascripts/locales/jquery.timeago.fr.js +27 -17
  47. data/vendor/assets/javascripts/locales/jquery.timeago.gl.js +28 -18
  48. data/vendor/assets/javascripts/locales/jquery.timeago.he.js +26 -16
  49. data/vendor/assets/javascripts/locales/jquery.timeago.hr.js +53 -48
  50. data/vendor/assets/javascripts/locales/jquery.timeago.hu.js +28 -18
  51. data/vendor/assets/javascripts/locales/jquery.timeago.hy.js +28 -18
  52. data/vendor/assets/javascripts/locales/jquery.timeago.id.js +29 -18
  53. data/vendor/assets/javascripts/locales/jquery.timeago.is.js +29 -19
  54. data/vendor/assets/javascripts/locales/jquery.timeago.it-short.js +30 -20
  55. data/vendor/assets/javascripts/locales/jquery.timeago.it.js +28 -16
  56. data/vendor/assets/javascripts/locales/jquery.timeago.ja.js +29 -19
  57. data/vendor/assets/javascripts/locales/jquery.timeago.jv.js +28 -18
  58. data/vendor/assets/javascripts/locales/jquery.timeago.ka.js +30 -0
  59. data/vendor/assets/javascripts/locales/jquery.timeago.ko.js +31 -20
  60. data/vendor/assets/javascripts/locales/jquery.timeago.ky.js +12 -4
  61. data/vendor/assets/javascripts/locales/jquery.timeago.lt.js +30 -20
  62. data/vendor/assets/javascripts/locales/jquery.timeago.lv.js +30 -20
  63. data/vendor/assets/javascripts/locales/jquery.timeago.mk.js +30 -20
  64. data/vendor/assets/javascripts/locales/jquery.timeago.nl.js +30 -20
  65. data/vendor/assets/javascripts/locales/jquery.timeago.no.js +28 -18
  66. data/vendor/assets/javascripts/locales/jquery.timeago.pl.js +11 -3
  67. data/vendor/assets/javascripts/locales/jquery.timeago.pt-br-short.js +30 -20
  68. data/vendor/assets/javascripts/locales/jquery.timeago.pt-br.js +28 -18
  69. data/vendor/assets/javascripts/locales/jquery.timeago.pt-short.js +30 -20
  70. data/vendor/assets/javascripts/locales/jquery.timeago.pt.js +26 -16
  71. data/vendor/assets/javascripts/locales/jquery.timeago.ro.js +29 -18
  72. data/vendor/assets/javascripts/locales/jquery.timeago.rs.js +53 -48
  73. data/vendor/assets/javascripts/locales/jquery.timeago.ru.js +14 -5
  74. data/vendor/assets/javascripts/locales/jquery.timeago.rw.js +30 -20
  75. data/vendor/assets/javascripts/locales/jquery.timeago.si.js +28 -18
  76. data/vendor/assets/javascripts/locales/jquery.timeago.sk.js +34 -18
  77. data/vendor/assets/javascripts/locales/jquery.timeago.sl.js +45 -39
  78. data/vendor/assets/javascripts/locales/jquery.timeago.sq.js +26 -0
  79. data/vendor/assets/javascripts/locales/jquery.timeago.sr.js +53 -48
  80. data/vendor/assets/javascripts/locales/jquery.timeago.sv.js +28 -18
  81. data/vendor/assets/javascripts/locales/jquery.timeago.th.js +30 -20
  82. data/vendor/assets/javascripts/locales/jquery.timeago.tr-short.js +30 -20
  83. data/vendor/assets/javascripts/locales/jquery.timeago.tr.js +26 -16
  84. data/vendor/assets/javascripts/locales/jquery.timeago.uk.js +12 -4
  85. data/vendor/assets/javascripts/locales/jquery.timeago.ur.js +30 -0
  86. data/vendor/assets/javascripts/locales/jquery.timeago.uz.js +29 -19
  87. data/vendor/assets/javascripts/locales/jquery.timeago.vi.js +30 -20
  88. data/vendor/assets/javascripts/locales/jquery.timeago.zh-CN.js +31 -20
  89. data/vendor/assets/javascripts/locales/jquery.timeago.zh-TW.js +30 -20
  90. metadata +14 -18
@@ -1,20 +1,30 @@
1
- // Welsh
2
- jQuery.timeago.settings.strings["cy"] = {
3
- prefixAgo: null,
4
- prefixFromNow: null,
5
- suffixAgo: "yn ôl",
6
- suffixFromNow: "o hyn",
7
- seconds: "llai na munud",
8
- minute: "am funud",
9
- minutes: "%d munud",
10
- hour: "tua awr",
11
- hours: "am %d awr",
12
- day: "y dydd",
13
- days: "%d diwrnod",
14
- month: "tua mis",
15
- months: "%d mis",
16
- year: "am y flwyddyn",
17
- years: "%d blynedd",
18
- wordSeparator: " ",
19
- numbers: []
20
- };
1
+ (function (factory) {
2
+ if (typeof define === 'function' && define.amd) {
3
+ define(['jquery'], factory);
4
+ } else if (typeof module === 'object' && typeof module.exports === 'object') {
5
+ factory(require('jquery'));
6
+ } else {
7
+ factory(jQuery);
8
+ }
9
+ }(function (jQuery) {
10
+ // Welsh
11
+ jQuery.timeago.settings.strings["cy"] = {
12
+ prefixAgo: null,
13
+ prefixFromNow: null,
14
+ suffixAgo: "yn ôl",
15
+ suffixFromNow: "o hyn",
16
+ seconds: "llai na munud",
17
+ minute: "am funud",
18
+ minutes: "%d munud",
19
+ hour: "tua awr",
20
+ hours: "am %d awr",
21
+ day: "y dydd",
22
+ days: "%d diwrnod",
23
+ month: "tua mis",
24
+ months: "%d mis",
25
+ year: "am y flwyddyn",
26
+ years: "%d blynedd",
27
+ wordSeparator: " ",
28
+ numbers: []
29
+ };
30
+ }));
@@ -1,18 +1,28 @@
1
- // Danish
2
- jQuery.timeago.settings.strings["da"] = {
3
- prefixAgo: "for",
4
- prefixFromNow: "om",
5
- suffixAgo: "siden",
6
- suffixFromNow: "",
7
- seconds: "mindre end et minut",
8
- minute: "ca. et minut",
9
- minutes: "%d minutter",
10
- hour: "ca. en time",
11
- hours: "ca. %d timer",
12
- day: "en dag",
13
- days: "%d dage",
14
- month: "ca. en måned",
15
- months: "%d måneder",
16
- year: "ca. et år",
17
- years: "%d år"
18
- };
1
+ (function (factory) {
2
+ if (typeof define === 'function' && define.amd) {
3
+ define(['jquery'], factory);
4
+ } else if (typeof module === 'object' && typeof module.exports === 'object') {
5
+ factory(require('jquery'));
6
+ } else {
7
+ factory(jQuery);
8
+ }
9
+ }(function (jQuery) {
10
+ // Danish
11
+ jQuery.timeago.settings.strings["da"] = {
12
+ prefixAgo: "for",
13
+ prefixFromNow: "om",
14
+ suffixAgo: "siden",
15
+ suffixFromNow: "",
16
+ seconds: "mindre end et minut",
17
+ minute: "ca. et minut",
18
+ minutes: "%d minutter",
19
+ hour: "ca. en time",
20
+ hours: "ca. %d timer",
21
+ day: "en dag",
22
+ days: "%d dage",
23
+ month: "ca. en måned",
24
+ months: "%d måneder",
25
+ year: "ca. et år",
26
+ years: "%d år"
27
+ };
28
+ }));
@@ -1,20 +1,30 @@
1
- // German shortened
2
- jQuery.timeago.settings.strings["de-short"] = {
3
- prefixAgo: null,
4
- prefixFromNow: null,
5
- suffixAgo: "",
6
- suffixFromNow: "",
7
- seconds: "s",
8
- minute: "1m",
9
- minutes: "%dm",
10
- hour: "1h",
11
- hours: "%dh",
12
- day: "1T.",
13
- days: "%dT.",
14
- month: "1Mt.",
15
- months: "%dMt.",
16
- year: "1J.",
17
- years: "%dJ.",
18
- wordSeparator: " ",
19
- numbers: []
20
- };
1
+ (function (factory) {
2
+ if (typeof define === 'function' && define.amd) {
3
+ define(['jquery'], factory);
4
+ } else if (typeof module === 'object' && typeof module.exports === 'object') {
5
+ factory(require('jquery'));
6
+ } else {
7
+ factory(jQuery);
8
+ }
9
+ }(function (jQuery) {
10
+ // German shortened
11
+ jQuery.timeago.settings.strings["de-short"] = {
12
+ prefixAgo: null,
13
+ prefixFromNow: null,
14
+ suffixAgo: "",
15
+ suffixFromNow: "",
16
+ seconds: "s",
17
+ minute: "1m",
18
+ minutes: "%dm",
19
+ hour: "1h",
20
+ hours: "%dh",
21
+ day: "1T.",
22
+ days: "%dT.",
23
+ month: "1Mt.",
24
+ months: "%dMt.",
25
+ year: "1J.",
26
+ years: "%dJ.",
27
+ wordSeparator: " ",
28
+ numbers: []
29
+ };
30
+ }));
@@ -1,18 +1,29 @@
1
- // German
2
- jQuery.timeago.settings.strings["de"] = {
3
- prefixAgo: "vor",
4
- prefixFromNow: "in",
5
- suffixAgo: "",
6
- suffixFromNow: "",
7
- seconds: "wenigen Sekunden",
8
- minute: "etwa einer Minute",
9
- minutes: "%d Minuten",
10
- hour: "etwa einer Stunde",
11
- hours: "%d Stunden",
12
- day: "etwa einem Tag",
13
- days: "%d Tagen",
14
- month: "etwa einem Monat",
15
- months: "%d Monaten",
16
- year: "etwa einem Jahr",
17
- years: "%d Jahren"
18
- };
1
+ (function (factory) {
2
+ if (typeof define === 'function' && define.amd) {
3
+ define(['jquery'], factory);
4
+ } else if (typeof module === 'object' && typeof module.exports === 'object') {
5
+ factory(require('jquery'));
6
+ } else {
7
+ factory(jQuery);
8
+ }
9
+ }(function (jQuery) {
10
+ // German
11
+ jQuery.timeago.settings.strings["de"] = {
12
+ prefixAgo: "vor",
13
+ prefixFromNow: "in",
14
+ suffixAgo: "",
15
+ suffixFromNow: "",
16
+ inPast: "jetzt gleich",
17
+ seconds: "wenigen Sekunden",
18
+ minute: "etwa einer Minute",
19
+ minutes: "%d Minuten",
20
+ hour: "etwa einer Stunde",
21
+ hours: "%d Stunden",
22
+ day: "etwa einem Tag",
23
+ days: "%d Tagen",
24
+ month: "etwa einem Monat",
25
+ months: "%d Monaten",
26
+ year: "etwa einem Jahr",
27
+ years: "%d Jahren"
28
+ };
29
+ }));
@@ -1,22 +1,32 @@
1
- /**
2
- * Dhivehi time in Thaana for timeago.js
3
- **/
4
- jQuery.timeago.settings.strings["dv"] = {
5
- prefixAgo: null,
6
- prefixFromNow: null,
7
- suffixAgo: "ކުރިން",
8
- suffixFromNow: "ފަހުން",
9
- seconds: "ސިކުންތުކޮޅެއް",
10
- minute: "މިނިޓެއްވަރު",
11
- minutes: "%d މިނިޓު",
12
- hour: "ގަޑިއެއްވަރު",
13
- hours: "ގާތްގަނޑަކަށް %d ގަޑިއިރު",
14
- day: "އެއް ދުވަސް",
15
- days: "މީގެ %d ދުވަސް",
16
- month: "މަހެއްވަރު",
17
- months: "މީގެ %d މަސް",
18
- year: "އަހަރެއްވަރު",
19
- years: "މީގެ %d އަހަރު",
20
- wordSeparator: " ",
21
- numbers: []
22
- };
1
+ (function (factory) {
2
+ if (typeof define === 'function' && define.amd) {
3
+ define(['jquery'], factory);
4
+ } else if (typeof module === 'object' && typeof module.exports === 'object') {
5
+ factory(require('jquery'));
6
+ } else {
7
+ factory(jQuery);
8
+ }
9
+ }(function (jQuery) {
10
+ /**
11
+ * Dhivehi time in Thaana for timeago.js
12
+ **/
13
+ jQuery.timeago.settings.strings["dv"] = {
14
+ prefixAgo: null,
15
+ prefixFromNow: null,
16
+ suffixAgo: "ކުރިން",
17
+ suffixFromNow: "ފަހުން",
18
+ seconds: "ސިކުންތުކޮޅެއް",
19
+ minute: "މިނިޓެއްވަރު",
20
+ minutes: "%d މިނިޓު",
21
+ hour: "ގަޑިއެއްވަރު",
22
+ hours: "ގާތްގަނޑަކަށް %d ގަޑިއިރު",
23
+ day: "އެއް ދުވަސް",
24
+ days: "މީގެ %d ދުވަސް",
25
+ month: "މަހެއްވަރު",
26
+ months: "މީގެ %d މަސް",
27
+ year: "އަހަރެއްވަރު",
28
+ years: "މީގެ %d އަހަރު",
29
+ wordSeparator: " ",
30
+ numbers: []
31
+ };
32
+ }));
@@ -1,18 +1,28 @@
1
- // Greek
2
- jQuery.timeago.settings.strings["el"] = {
3
- prefixAgo: "πριν",
4
- prefixFromNow: "σε",
5
- suffixAgo: "",
6
- suffixFromNow: "",
7
- seconds: "λιγότερο από ένα λεπτό",
8
- minute: "περίπου ένα λεπτό",
9
- minutes: "%d λεπτά",
10
- hour: "περίπου μία ώρα",
11
- hours: "περίπου %d ώρες",
12
- day: "μία μέρα",
13
- days: "%d μέρες",
14
- month: "περίπου ένα μήνα",
15
- months: "%d μήνες",
16
- year: "περίπου ένα χρόνο",
17
- years: "%d χρόνια"
18
- };
1
+ (function (factory) {
2
+ if (typeof define === 'function' && define.amd) {
3
+ define(['jquery'], factory);
4
+ } else if (typeof module === 'object' && typeof module.exports === 'object') {
5
+ factory(require('jquery'));
6
+ } else {
7
+ factory(jQuery);
8
+ }
9
+ }(function (jQuery) {
10
+ // Greek
11
+ jQuery.timeago.settings.strings["el"] = {
12
+ prefixAgo: "πριν",
13
+ prefixFromNow: "σε",
14
+ suffixAgo: "",
15
+ suffixFromNow: "",
16
+ seconds: "λιγότερο από ένα λεπτό",
17
+ minute: "περίπου ένα λεπτό",
18
+ minutes: "%d λεπτά",
19
+ hour: "περίπου μία ώρα",
20
+ hours: "περίπου %d ώρες",
21
+ day: "μία μέρα",
22
+ days: "%d μέρες",
23
+ month: "περίπου ένα μήνα",
24
+ months: "%d μήνες",
25
+ year: "περίπου ένα χρόνο",
26
+ years: "%d χρόνια"
27
+ };
28
+ }));
@@ -1,20 +1,30 @@
1
- // English shortened
2
- jQuery.timeago.settings.strings["en-short"] = {
3
- prefixAgo: null,
4
- prefixFromNow: null,
5
- suffixAgo: "",
6
- suffixFromNow: "",
7
- seconds: "1m",
8
- minute: "1m",
9
- minutes: "%dm",
10
- hour: "1h",
11
- hours: "%dh",
12
- day: "1d",
13
- days: "%dd",
14
- month: "1mo",
15
- months: "%dmo",
16
- year: "1yr",
17
- years: "%dyr",
18
- wordSeparator: " ",
19
- numbers: []
20
- };
1
+ (function (factory) {
2
+ if (typeof define === 'function' && define.amd) {
3
+ define(['jquery'], factory);
4
+ } else if (typeof module === 'object' && typeof module.exports === 'object') {
5
+ factory(require('jquery'));
6
+ } else {
7
+ factory(jQuery);
8
+ }
9
+ }(function (jQuery) {
10
+ // English shortened
11
+ jQuery.timeago.settings.strings["en-short"] = {
12
+ prefixAgo: null,
13
+ prefixFromNow: null,
14
+ suffixAgo: "",
15
+ suffixFromNow: "",
16
+ seconds: "1m",
17
+ minute: "1m",
18
+ minutes: "%dm",
19
+ hour: "1h",
20
+ hours: "%dh",
21
+ day: "1d",
22
+ days: "%dd",
23
+ month: "1mo",
24
+ months: "%dmo",
25
+ year: "1yr",
26
+ years: "%dyr",
27
+ wordSeparator: " ",
28
+ numbers: []
29
+ };
30
+ }));
@@ -0,0 +1,30 @@
1
+ (function (factory) {
2
+ if (typeof define === 'function' && define.amd) {
3
+ define(['jquery'], factory);
4
+ } else if (typeof module === 'object' && typeof module.exports === 'object') {
5
+ factory(require('jquery'));
6
+ } else {
7
+ factory(jQuery);
8
+ }
9
+ }(function (jQuery) {
10
+ // English (Template) -> Esperanto
11
+ jQuery.timeago.settings.strings["eo"] = {
12
+ prefixAgo: "antaŭ",
13
+ prefixFromNow: null,
14
+ suffixAgo: null,
15
+ suffixFromNow: "de nun",
16
+ seconds: "malpli ol minuto",
17
+ minute: "ĉirkaŭ uno minuto",
18
+ minutes: "%d minutoj",
19
+ hour: "ĉirkaŭ uno horo",
20
+ hours: "ĉirkaŭ %d horojn",
21
+ day: "ĉirkaŭ tago",
22
+ days: "%d tagoj",
23
+ month: "ĉirkaŭ unu monato",
24
+ months: "%d monatoj",
25
+ year: "ĉirkaŭ unu jaro",
26
+ years: "%d jaroj",
27
+ wordSeparator: " ",
28
+ numbers: []
29
+ };
30
+ }));
@@ -1,20 +1,31 @@
1
- // Spanish shortened
2
- jQuery.timeago.settings.strings["es-short"] = {
3
- prefixAgo: null,
4
- prefixFromNow: null,
5
- suffixAgo: "",
6
- suffixFromNow: "",
7
- seconds: "1m",
8
- minute: "1m",
9
- minutes: "%dm",
10
- hour: "1h",
11
- hours: "%dh",
12
- day: "1d",
13
- days: "%dd",
14
- month: "1me",
15
- months: "%dme",
16
- year: "1a",
17
- years: "%da",
18
- wordSeparator: " ",
19
- numbers: []
20
- };
1
+ (function (factory) {
2
+ if (typeof define === 'function' && define.amd) {
3
+ define(['jquery'], factory);
4
+ } else if (typeof module === 'object' && typeof module.exports === 'object') {
5
+ factory(require('jquery'));
6
+ } else {
7
+ factory(jQuery);
8
+ }
9
+ }(function (jQuery) {
10
+ // Spanish shortened
11
+ jQuery.timeago.settings.strings["es-short"] = {
12
+ prefixAgo: null,
13
+ prefixFromNow: null,
14
+ suffixAgo: "",
15
+ suffixFromNow: "",
16
+ seconds: "1m",
17
+ minute: "1m",
18
+ minutes: "%dm",
19
+ hour: "1h",
20
+ hours: "%dh",
21
+ day: "1d",
22
+ days: "%dd",
23
+ month: "1me",
24
+ months: "%dme",
25
+ year: "1a",
26
+ years: "%da",
27
+ wordSeparator: " ",
28
+ numbers: []
29
+ };
30
+ }));
31
+
@@ -1,18 +1,29 @@
1
- // Spanish
2
- jQuery.timeago.settings.strings["es"] = {
3
- prefixAgo: "hace",
4
- prefixFromNow: "dentro de",
5
- suffixAgo: "",
6
- suffixFromNow: "",
7
- seconds: "menos de un minuto",
8
- minute: "un minuto",
9
- minutes: "unos %d minutos",
10
- hour: "una hora",
11
- hours: "%d horas",
12
- day: "un día",
13
- days: "%d días",
14
- month: "un mes",
15
- months: "%d meses",
16
- year: "un año",
17
- years: "%d años"
18
- };
1
+ (function (factory) {
2
+ if (typeof define === 'function' && define.amd) {
3
+ define(['jquery'], factory);
4
+ } else if (typeof module === 'object' && typeof module.exports === 'object') {
5
+ factory(require('jquery'));
6
+ } else {
7
+ factory(jQuery);
8
+ }
9
+ }(function (jQuery) {
10
+ // Spanish
11
+ jQuery.timeago.settings.strings["es"] = {
12
+ prefixAgo: "hace",
13
+ prefixFromNow: "dentro de",
14
+ suffixAgo: "",
15
+ suffixFromNow: "",
16
+ seconds: "menos de un minuto",
17
+ minute: "un minuto",
18
+ minutes: "unos %d minutos",
19
+ hour: "una hora",
20
+ hours: "%d horas",
21
+ day: "un día",
22
+ days: "%d días",
23
+ month: "un mes",
24
+ months: "%d meses",
25
+ year: "un año",
26
+ years: "%d años"
27
+ };
28
+ }));
29
+