summaryrefslogtreecommitdiff
path: root/date-fns/src/locale/uk/_lib/localize/index.js
diff options
context:
space:
mode:
Diffstat (limited to 'date-fns/src/locale/uk/_lib/localize/index.js')
-rw-r--r--date-fns/src/locale/uk/_lib/localize/index.js217
1 files changed, 217 insertions, 0 deletions
diff --git a/date-fns/src/locale/uk/_lib/localize/index.js b/date-fns/src/locale/uk/_lib/localize/index.js
new file mode 100644
index 0000000..ab9c7ff
--- /dev/null
+++ b/date-fns/src/locale/uk/_lib/localize/index.js
@@ -0,0 +1,217 @@
+import buildLocalizeFn from '../../../_lib/buildLocalizeFn/index'
+
+var eraValues = {
+ narrow: ['до н.е.', 'н.е.'],
+ abbreviated: ['до н. е.', 'н. е.'],
+ wide: ['до нашої ери', 'нашої ери']
+}
+
+var quarterValues = {
+ narrow: ['1', '2', '3', '4'],
+ abbreviated: ['1-й кв.', '2-й кв.', '3-й кв.', '4-й кв.'],
+ wide: ['1-й квартал', '2-й квартал', '3-й квартал', '4-й квартал']
+}
+
+var monthValues = {
+ // ДСТУ 3582:2013
+ narrow: ['С', 'Л', 'Б', 'К', 'Т', 'Ч', 'Л', 'С', 'В', 'Ж', 'Л', 'Г'],
+ abbreviated: [
+ 'січ.',
+ 'лют.',
+ 'берез.',
+ 'квіт.',
+ 'трав.',
+ 'черв.',
+ 'лип.',
+ 'серп.',
+ 'верес.',
+ 'жовт.',
+ 'листоп.',
+ 'груд.'
+ ],
+ wide: [
+ 'січень',
+ 'лютий',
+ 'березень',
+ 'квітень',
+ 'травень',
+ 'червень',
+ 'липень',
+ 'серпень',
+ 'вересень',
+ 'жовтень',
+ 'листопад',
+ 'грудень'
+ ]
+}
+
+var formattingMonthValues = {
+ narrow: ['С', 'Л', 'Б', 'К', 'Т', 'Ч', 'Л', 'С', 'В', 'Ж', 'Л', 'Г'],
+ abbreviated: [
+ 'січ.',
+ 'лют.',
+ 'берез.',
+ 'квіт.',
+ 'трав.',
+ 'черв.',
+ 'лип.',
+ 'серп.',
+ 'верес.',
+ 'жовт.',
+ 'листоп.',
+ 'груд.'
+ ],
+ wide: [
+ 'січня',
+ 'лютого',
+ 'березня',
+ 'квітня',
+ 'травня',
+ 'червня',
+ 'липня',
+ 'серпня',
+ 'вересня',
+ 'жовтня',
+ 'листопада',
+ 'грудня'
+ ]
+}
+
+var dayValues = {
+ narrow: ['Н', 'П', 'В', 'С', 'Ч', 'П', 'С'],
+ short: ['нд', 'пн', 'вт', 'ср', 'чт', 'пт', 'сб'],
+ abbreviated: ['нед', 'пон', 'вів', 'сер', 'чтв', 'птн', 'суб'],
+ wide: [
+ 'неділя',
+ 'понеділок',
+ 'вівторок',
+ 'середа',
+ 'четвер',
+ 'п’ятниця',
+ 'субота'
+ ]
+}
+
+var dayPeriodValues = {
+ narrow: {
+ am: 'ДП',
+ pm: 'ПП',
+ midnight: 'півн.',
+ noon: 'пол.',
+ morning: 'ранок',
+ afternoon: 'день',
+ evening: 'веч.',
+ night: 'ніч'
+ },
+ abbreviated: {
+ am: 'ДП',
+ pm: 'ПП',
+ midnight: 'півн.',
+ noon: 'пол.',
+ morning: 'ранок',
+ afternoon: 'день',
+ evening: 'веч.',
+ night: 'ніч'
+ },
+ wide: {
+ am: 'ДП',
+ pm: 'ПП',
+ midnight: 'північ',
+ noon: 'полудень',
+ morning: 'ранок',
+ afternoon: 'день',
+ evening: 'вечір',
+ night: 'ніч'
+ }
+}
+
+var formattingDayPeriodValues = {
+ narrow: {
+ am: 'ДП',
+ pm: 'ПП',
+ midnight: 'півн.',
+ noon: 'пол.',
+ morning: 'ранку',
+ afternoon: 'дня',
+ evening: 'веч.',
+ night: 'ночі'
+ },
+ abbreviated: {
+ am: 'ДП',
+ pm: 'ПП',
+ midnight: 'півн.',
+ noon: 'пол.',
+ morning: 'ранку',
+ afternoon: 'дня',
+ evening: 'веч.',
+ night: 'ночі'
+ },
+ wide: {
+ am: 'ДП',
+ pm: 'ПП',
+ midnight: 'північ',
+ noon: 'полудень',
+ morning: 'ранку',
+ afternoon: 'дня',
+ evening: 'веч.',
+ night: 'ночі'
+ }
+}
+
+function ordinalNumber(dirtyNumber, dirtyOptions) {
+ var options = dirtyOptions || {}
+ var unit = String(options.unit)
+ var suffix
+
+ if (unit === 'date') {
+ if (dirtyNumber === 3 || dirtyNumber === 23) {
+ suffix = '-є'
+ } else {
+ suffix = '-е'
+ }
+ } else if (unit === 'minute' || unit === 'second' || unit === 'hour') {
+ suffix = '-а'
+ } else {
+ suffix = '-й'
+ }
+
+ return dirtyNumber + suffix
+}
+
+var localize = {
+ ordinalNumber: ordinalNumber,
+
+ era: buildLocalizeFn({
+ values: eraValues,
+ defaultWidth: 'wide'
+ }),
+
+ quarter: buildLocalizeFn({
+ values: quarterValues,
+ defaultWidth: 'wide',
+ argumentCallback: function(quarter) {
+ return Number(quarter) - 1
+ }
+ }),
+
+ month: buildLocalizeFn({
+ values: monthValues,
+ defaultWidth: 'wide',
+ formattingValues: formattingMonthValues,
+ defaultFormattingWidth: 'wide'
+ }),
+
+ day: buildLocalizeFn({
+ values: dayValues,
+ defaultWidth: 'wide'
+ }),
+
+ dayPeriod: buildLocalizeFn({
+ values: dayPeriodValues,
+ defaultWidth: 'any',
+ formattingValues: formattingDayPeriodValues,
+ defaultFormattingWidth: 'wide'
+ })
+}
+
+export default localize