From eeb5abbbe897f78b85f9735984864cd25f42247c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E3=82=8B=E3=81=97=E3=81=B5=E3=81=81?= Date: Thu, 4 Mar 2021 23:20:27 +0900 Subject: [PATCH] fix: date util localization (#8723) * Update dateUtil.js * version up moment * exclude unnecessary languages in Moment.js from webpack * add Occitan of Moment.js * Fixed auto-formatting * add require missing by mistake --- package.json | 2 +- react/features/base/i18n/dateUtil.js | 36 +++++++++++++++++-- .../base/react/components/web/MeetingsList.js | 2 +- webpack.config.js | 7 ++++ 4 files changed, 42 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index 6ebf344f7..5a2b53ed6 100644 --- a/package.json +++ b/package.json @@ -57,7 +57,7 @@ "lib-jitsi-meet": "github:jitsi/lib-jitsi-meet#f1ec96678002a88a0a87bb0a6fec1f5d642813d2", "libflacjs": "github:mmig/libflac.js#93d37e7f811f01cf7d8b6a603e38bd3c3810907d", "lodash": "4.17.21", - "moment": "2.19.4", + "moment": "2.29.1", "moment-duration-format": "2.2.2", "olm": "https://packages.matrix.org/npm/olm/olm-3.2.1.tgz", "pixelmatch": "5.1.0", diff --git a/react/features/base/i18n/dateUtil.js b/react/features/base/i18n/dateUtil.js index 98af4d6b3..76b6aba93 100644 --- a/react/features/base/i18n/dateUtil.js +++ b/react/features/base/i18n/dateUtil.js @@ -10,27 +10,57 @@ import 'moment-duration-format'; // MomentJS uses static language bundle loading, so in order to support dynamic // language selection in the app we need to load all bundles that we support in // the app. +require('moment/locale/af'); +require('moment/locale/ar'); +require('moment/locale/be'); require('moment/locale/bg'); +require('moment/locale/ca'); +require('moment/locale/cs'); +require('moment/locale/da'); require('moment/locale/de'); +require('moment/locale/el'); +require('moment/locale/en-gb'); require('moment/locale/eo'); +require('moment/locale/es-us'); require('moment/locale/es'); +require('moment/locale/et'); +require('moment/locale/eu'); require('moment/locale/fa'); +require('moment/locale/fi'); +require('moment/locale/fr-ca'); require('moment/locale/fr'); +require('moment/locale/gl'); +require('moment/locale/he'); +require('moment/locale/hr'); +require('moment/locale/hu'); require('moment/locale/hy-am'); +require('moment/locale/id'); +require('moment/locale/is'); require('moment/locale/it'); +require('moment/locale/ja'); +require('moment/locale/ko'); +require('moment/locale/lt'); +require('moment/locale/lv'); +require('moment/locale/ml'); +require('moment/locale/mn'); +require('moment/locale/mr'); require('moment/locale/nb'); - -// OC is not available. Please submit OC translation to the MomentJS project. - +require('moment/locale/nl'); +require('moment/locale/oc-lnc'); require('moment/locale/pl'); require('moment/locale/pt'); require('moment/locale/pt-br'); +require('moment/locale/ro'); require('moment/locale/ru'); require('moment/locale/sk'); require('moment/locale/sl'); +require('moment/locale/sr'); require('moment/locale/sv'); require('moment/locale/tr'); +require('moment/locale/uk'); +require('moment/locale/vi'); require('moment/locale/zh-cn'); +require('moment/locale/zh-tw'); /** * Returns a localized date formatter initialized with a specific {@code Date} diff --git a/react/features/base/react/components/web/MeetingsList.js b/react/features/base/react/components/web/MeetingsList.js index 80d9fd8de..64f63555c 100644 --- a/react/features/base/react/components/web/MeetingsList.js +++ b/react/features/base/react/components/web/MeetingsList.js @@ -52,7 +52,7 @@ type Props = { * @returns {string} */ function _toDateString(date) { - return getLocalizedDateFormatter(date).format('MMM Do, YYYY'); + return getLocalizedDateFormatter(date).format('ll'); } diff --git a/webpack.config.js b/webpack.config.js index 0cb847b95..deae5c39b 100644 --- a/webpack.config.js +++ b/webpack.config.js @@ -2,6 +2,7 @@ const CircularDependencyPlugin = require('circular-dependency-plugin'); const process = require('process'); +const webpack = require('webpack'); const { BundleAnalyzerPlugin } = require('webpack-bundle-analyzer'); /** @@ -194,6 +195,9 @@ module.exports = [ entry: { 'app.bundle': './app.js' }, + plugins: [ + new webpack.IgnorePlugin(/^\.\/locale$/, /moment$/) + ], performance: getPerformanceHints(4 * 1024 * 1024) }), Object.assign({}, config, { @@ -206,6 +210,9 @@ module.exports = [ entry: { 'dial_in_info_bundle': './react/features/invite/components/dial-in-info-page' }, + plugins: [ + new webpack.IgnorePlugin(/^\.\/locale$/, /moment$/) + ], performance: getPerformanceHints(500 * 1024) }), Object.assign({}, config, {