Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLukas Eipert <leipert@gitlab.com>2019-01-22 18:07:27 +0300
committerLukas Eipert <leipert@gitlab.com>2019-01-22 18:12:15 +0300
commit887e5ac451badd5f9c8787e9481c5f2cef8e7d05 (patch)
tree600143624c9d74102799cbff0c55e23e349fced6
parent6e4dac3589d2918f565cf4dc4771df875a6836e2 (diff)
Remove big if-else structure in favor of array
-rw-r--r--app/assets/javascripts/lib/utils/datetime_utility.js102
1 files changed, 38 insertions, 64 deletions
diff --git a/app/assets/javascripts/lib/utils/datetime_utility.js b/app/assets/javascripts/lib/utils/datetime_utility.js
index 4601bc77784..d3fe8f77bd4 100644
--- a/app/assets/javascripts/lib/utils/datetime_utility.js
+++ b/app/assets/javascripts/lib/utils/datetime_utility.js
@@ -90,84 +90,58 @@ export const getTimeago = () => {
const memoizedLocaleRemaining = () => {
const cache = [];
+ const timeAgoLocaleRemaining = [
+ () => [s__('Timeago|just now'), s__('Timeago|right now')],
+ () => [s__('Timeago|%s seconds ago'), s__('Timeago|%s seconds remaining')],
+ () => [s__('Timeago|1 minute ago'), s__('Timeago|1 minute remaining')],
+ () => [s__('Timeago|%s minutes ago'), s__('Timeago|%s minutes remaining')],
+ () => [s__('Timeago|1 hour ago'), s__('Timeago|1 hour remaining')],
+ () => [s__('Timeago|%s hours ago'), s__('Timeago|%s hours remaining')],
+ () => [s__('Timeago|1 day ago'), s__('Timeago|1 day remaining')],
+ () => [s__('Timeago|%s days ago'), s__('Timeago|%s days remaining')],
+ () => [s__('Timeago|1 week ago'), s__('Timeago|1 week remaining')],
+ () => [s__('Timeago|%s weeks ago'), s__('Timeago|%s weeks remaining')],
+ () => [s__('Timeago|1 month ago'), s__('Timeago|1 month remaining')],
+ () => [s__('Timeago|%s months ago'), s__('Timeago|%s months remaining')],
+ () => [s__('Timeago|1 year ago'), s__('Timeago|1 year remaining')],
+ () => [s__('Timeago|%s years ago'), s__('Timeago|%s years remaining')],
+ ];
+
return (number, index) => {
if (cache[index]) {
return cache[index];
}
- let result = [];
- if (index === 0) {
- result = [s__('Timeago|just now'), s__('Timeago|right now')];
- } else if (index === 1) {
- result = [s__('Timeago|%s seconds ago'), s__('Timeago|%s seconds remaining')];
- } else if (index === 2) {
- result = [s__('Timeago|1 minute ago'), s__('Timeago|1 minute remaining')];
- } else if (index === 3) {
- result = [s__('Timeago|%s minutes ago'), s__('Timeago|%s minutes remaining')];
- } else if (index === 4) {
- result = [s__('Timeago|1 hour ago'), s__('Timeago|1 hour remaining')];
- } else if (index === 5) {
- result = [s__('Timeago|%s hours ago'), s__('Timeago|%s hours remaining')];
- } else if (index === 6) {
- result = [s__('Timeago|1 day ago'), s__('Timeago|1 day remaining')];
- } else if (index === 7) {
- result = [s__('Timeago|%s days ago'), s__('Timeago|%s days remaining')];
- } else if (index === 8) {
- result = [s__('Timeago|1 week ago'), s__('Timeago|1 week remaining')];
- } else if (index === 9) {
- result = [s__('Timeago|%s weeks ago'), s__('Timeago|%s weeks remaining')];
- } else if (index === 10) {
- result = [s__('Timeago|1 month ago'), s__('Timeago|1 month remaining')];
- } else if (index === 11) {
- result = [s__('Timeago|%s months ago'), s__('Timeago|%s months remaining')];
- } else if (index === 12) {
- result = [s__('Timeago|1 year ago'), s__('Timeago|1 year remaining')];
- } else if (index === 13) {
- result = [s__('Timeago|%s years ago'), s__('Timeago|%s years remaining')];
- }
- cache[index] = result;
- return result;
+ cache[index] = timeAgoLocaleRemaining[index] && timeAgoLocaleRemaining[index]();
+ return cache[index];
};
};
const memoizedLocale = () => {
const cache = [];
+ const timeAgoLocale = [
+ () => [s__('Timeago|just now'), s__('Timeago|right now')],
+ () => [s__('Timeago|%s seconds ago'), s__('Timeago|in %s seconds')],
+ () => [s__('Timeago|1 minute ago'), s__('Timeago|in 1 minute')],
+ () => [s__('Timeago|%s minutes ago'), s__('Timeago|in %s minutes')],
+ () => [s__('Timeago|1 hour ago'), s__('Timeago|in 1 hour')],
+ () => [s__('Timeago|%s hours ago'), s__('Timeago|in %s hours')],
+ () => [s__('Timeago|1 day ago'), s__('Timeago|in 1 day')],
+ () => [s__('Timeago|%s days ago'), s__('Timeago|in %s days')],
+ () => [s__('Timeago|1 week ago'), s__('Timeago|in 1 week')],
+ () => [s__('Timeago|%s weeks ago'), s__('Timeago|in %s weeks')],
+ () => [s__('Timeago|1 month ago'), s__('Timeago|in 1 month')],
+ () => [s__('Timeago|%s months ago'), s__('Timeago|in %s months')],
+ () => [s__('Timeago|1 year ago'), s__('Timeago|in 1 year')],
+ () => [s__('Timeago|%s years ago'), s__('Timeago|in %s years')],
+ ];
+
return (number, index) => {
if (cache[index]) {
return cache[index];
}
- let result = [];
- if (index === 0) {
- result = [s__('Timeago|just now'), s__('Timeago|right now')];
- } else if (index === 1) {
- result = [s__('Timeago|%s seconds ago'), s__('Timeago|in %s seconds')];
- } else if (index === 2) {
- result = [s__('Timeago|1 minute ago'), s__('Timeago|in 1 minute')];
- } else if (index === 3) {
- result = [s__('Timeago|%s minutes ago'), s__('Timeago|in %s minutes')];
- } else if (index === 4) {
- result = [s__('Timeago|1 hour ago'), s__('Timeago|in 1 hour')];
- } else if (index === 5) {
- result = [s__('Timeago|%s hours ago'), s__('Timeago|in %s hours')];
- } else if (index === 6) {
- result = [s__('Timeago|1 day ago'), s__('Timeago|in 1 day')];
- } else if (index === 7) {
- result = [s__('Timeago|%s days ago'), s__('Timeago|in %s days')];
- } else if (index === 8) {
- result = [s__('Timeago|1 week ago'), s__('Timeago|in 1 week')];
- } else if (index === 9) {
- result = [s__('Timeago|%s weeks ago'), s__('Timeago|in %s weeks')];
- } else if (index === 10) {
- result = [s__('Timeago|1 month ago'), s__('Timeago|in 1 month')];
- } else if (index === 11) {
- result = [s__('Timeago|%s months ago'), s__('Timeago|in %s months')];
- } else if (index === 12) {
- result = [s__('Timeago|1 year ago'), s__('Timeago|in 1 year')];
- } else if (index === 13) {
- result = [s__('Timeago|%s years ago'), s__('Timeago|in %s years')];
- }
- cache[index] = result;
- return result;
+ cache[index] = timeAgoLocale[index] && timeAgoLocale[index]();
+ return cache[index];
};
};