From e92c85d1e13a6a477ef28db771f94dfc5b458e46 Mon Sep 17 00:00:00 2001 From: Adam Shaw Date: Wed, 6 Aug 2014 16:57:15 -0700 Subject: [PATCH] moment-2.8 compatibility, language file generation --- Gruntfile.js | 2 +- build/tasks/generateLanguages.js | 10 ++++++---- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/Gruntfile.js b/Gruntfile.js index 3b8702b..0de3eeb 100644 --- a/Gruntfile.js +++ b/Gruntfile.js @@ -123,7 +123,7 @@ module.exports = function(grunt) { ]); config.generateLanguages = { - moment: 'lib/moment/lang/', + moment: grunt.file.expand('lib/moment/{locale,lang}/')[0], // lang directory is pre-moment-2.8 datepicker: 'lib/jquery-ui/ui/i18n/', fullCalendar: 'lang/', dest: 'build/temp/lang/', diff --git a/build/tasks/generateLanguages.js b/build/tasks/generateLanguages.js index 5079e95..b158cbb 100644 --- a/build/tasks/generateLanguages.js +++ b/build/tasks/generateLanguages.js @@ -36,7 +36,7 @@ module.exports = function(grunt) { }); // code for resetting the language back to English - combinedJS += '\nmoment.lang("en");'; + combinedJS += '\n(moment.locale || moment.lang).call(moment, "en");'; // works with moment-pre-2.8 combinedJS += '\n$.fullCalendar.lang("en");'; combinedJS += '\nif ($.datepicker) $.datepicker.setDefaults($.datepicker.regional[""]);'; @@ -133,9 +133,11 @@ module.exports = function(grunt) { } ); - js = js.replace( // replace the `return` statement so execution continues - /^(\s*)return moment\.lang\(/m, - '$1moment.lang(' + // replace the `return` statement so execution continues + // compatible with moment-pre-2.8 + js = js.replace( + /^(\s*)return moment\.(defineLocale|lang)\(/m, + '$1(moment.defineLocale || moment.lang).call(moment, ' ); return js;