summaryrefslogtreecommitdiff
path: root/date-fns/src/locale/uk/_lib/formatRelative/index.js
diff options
context:
space:
mode:
Diffstat (limited to 'date-fns/src/locale/uk/_lib/formatRelative/index.js')
-rw-r--r--date-fns/src/locale/uk/_lib/formatRelative/index.js82
1 files changed, 82 insertions, 0 deletions
diff --git a/date-fns/src/locale/uk/_lib/formatRelative/index.js b/date-fns/src/locale/uk/_lib/formatRelative/index.js
new file mode 100644
index 0000000..1f3c405
--- /dev/null
+++ b/date-fns/src/locale/uk/_lib/formatRelative/index.js
@@ -0,0 +1,82 @@
+import isSameUTCWeek from '../../../../_lib/isSameUTCWeek/index'
+
+var accusativeWeekdays = [
+ 'неділю',
+ 'понеділок',
+ 'вівторок',
+ 'середу',
+ 'четвер',
+ 'п’ятницю',
+ 'суботу'
+]
+
+function lastWeek(day) {
+ var weekday = accusativeWeekdays[day]
+
+ switch (day) {
+ case 0:
+ case 3:
+ case 5:
+ case 6:
+ return "'у минулу " + weekday + " о' p"
+ case 1:
+ case 2:
+ case 4:
+ return "'у минулий " + weekday + " о' p"
+ }
+}
+
+function thisWeek(day) {
+ var weekday = accusativeWeekdays[day]
+
+ return "'у " + weekday + " о' p"
+}
+
+function nextWeek(day) {
+ var weekday = accusativeWeekdays[day]
+
+ switch (day) {
+ case 0:
+ case 3:
+ case 5:
+ case 6:
+ return "'у наступну " + weekday + " о' p"
+ case 1:
+ case 2:
+ case 4:
+ return "'у наступний " + weekday + " о' p"
+ }
+}
+
+var formatRelativeLocale = {
+ lastWeek: function(date, baseDate, options) {
+ var day = date.getUTCDay()
+ if (isSameUTCWeek(date, baseDate, options)) {
+ return thisWeek(day)
+ } else {
+ return lastWeek(day)
+ }
+ },
+ yesterday: "'вчора о' p",
+ today: "'сьогодні о' p",
+ tomorrow: "'завтра о' p",
+ nextWeek: function(date, baseDate, options) {
+ var day = date.getUTCDay()
+ if (isSameUTCWeek(date, baseDate, options)) {
+ return thisWeek(day)
+ } else {
+ return nextWeek(day)
+ }
+ },
+ other: 'P'
+}
+
+export default function formatRelative(token, date, baseDate, options) {
+ var format = formatRelativeLocale[token]
+
+ if (typeof format === 'function') {
+ return format(date, baseDate, options)
+ }
+
+ return format
+}