index.js 4.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149
  1. "use strict";
  2. var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
  3. Object.defineProperty(exports, "__esModule", {
  4. value: true
  5. });
  6. exports.default = void 0;
  7. var _index = _interopRequireDefault(require("../../../_lib/buildLocalizeFn/index.js"));
  8. var eraValues = {
  9. narrow: ['до н.е.', 'н.е.'],
  10. abbreviated: ['до н. е.', 'н. е.'],
  11. wide: ['до нашої ери', 'нашої ери']
  12. };
  13. var quarterValues = {
  14. narrow: ['1', '2', '3', '4'],
  15. abbreviated: ['1-й кв.', '2-й кв.', '3-й кв.', '4-й кв.'],
  16. wide: ['1-й квартал', '2-й квартал', '3-й квартал', '4-й квартал']
  17. };
  18. var monthValues = {
  19. // ДСТУ 3582:2013
  20. narrow: ['С', 'Л', 'Б', 'К', 'Т', 'Ч', 'Л', 'С', 'В', 'Ж', 'Л', 'Г'],
  21. abbreviated: ['січ.', 'лют.', 'берез.', 'квіт.', 'трав.', 'черв.', 'лип.', 'серп.', 'верес.', 'жовт.', 'листоп.', 'груд.'],
  22. wide: ['січень', 'лютий', 'березень', 'квітень', 'травень', 'червень', 'липень', 'серпень', 'вересень', 'жовтень', 'листопад', 'грудень']
  23. };
  24. var formattingMonthValues = {
  25. narrow: ['С', 'Л', 'Б', 'К', 'Т', 'Ч', 'Л', 'С', 'В', 'Ж', 'Л', 'Г'],
  26. abbreviated: ['січ.', 'лют.', 'берез.', 'квіт.', 'трав.', 'черв.', 'лип.', 'серп.', 'верес.', 'жовт.', 'листоп.', 'груд.'],
  27. wide: ['січня', 'лютого', 'березня', 'квітня', 'травня', 'червня', 'липня', 'серпня', 'вересня', 'жовтня', 'листопада', 'грудня']
  28. };
  29. var dayValues = {
  30. narrow: ['Н', 'П', 'В', 'С', 'Ч', 'П', 'С'],
  31. short: ['нд', 'пн', 'вт', 'ср', 'чт', 'пт', 'сб'],
  32. abbreviated: ['нед', 'пон', 'вів', 'сер', 'чтв', 'птн', 'суб'],
  33. wide: ['неділя', 'понеділок', 'вівторок', 'середа', 'четвер', 'п’ятниця', 'субота']
  34. };
  35. var dayPeriodValues = {
  36. narrow: {
  37. am: 'ДП',
  38. pm: 'ПП',
  39. midnight: 'півн.',
  40. noon: 'пол.',
  41. morning: 'ранок',
  42. afternoon: 'день',
  43. evening: 'веч.',
  44. night: 'ніч'
  45. },
  46. abbreviated: {
  47. am: 'ДП',
  48. pm: 'ПП',
  49. midnight: 'півн.',
  50. noon: 'пол.',
  51. morning: 'ранок',
  52. afternoon: 'день',
  53. evening: 'веч.',
  54. night: 'ніч'
  55. },
  56. wide: {
  57. am: 'ДП',
  58. pm: 'ПП',
  59. midnight: 'північ',
  60. noon: 'полудень',
  61. morning: 'ранок',
  62. afternoon: 'день',
  63. evening: 'вечір',
  64. night: 'ніч'
  65. }
  66. };
  67. var formattingDayPeriodValues = {
  68. narrow: {
  69. am: 'ДП',
  70. pm: 'ПП',
  71. midnight: 'півн.',
  72. noon: 'пол.',
  73. morning: 'ранку',
  74. afternoon: 'дня',
  75. evening: 'веч.',
  76. night: 'ночі'
  77. },
  78. abbreviated: {
  79. am: 'ДП',
  80. pm: 'ПП',
  81. midnight: 'півн.',
  82. noon: 'пол.',
  83. morning: 'ранку',
  84. afternoon: 'дня',
  85. evening: 'веч.',
  86. night: 'ночі'
  87. },
  88. wide: {
  89. am: 'ДП',
  90. pm: 'ПП',
  91. midnight: 'північ',
  92. noon: 'полудень',
  93. morning: 'ранку',
  94. afternoon: 'дня',
  95. evening: 'веч.',
  96. night: 'ночі'
  97. }
  98. };
  99. var ordinalNumber = function ordinalNumber(dirtyNumber, options) {
  100. var unit = String(options === null || options === void 0 ? void 0 : options.unit);
  101. var number = Number(dirtyNumber);
  102. var suffix;
  103. if (unit === 'date') {
  104. if (number === 3 || number === 23) {
  105. suffix = '-є';
  106. } else {
  107. suffix = '-е';
  108. }
  109. } else if (unit === 'minute' || unit === 'second' || unit === 'hour') {
  110. suffix = '-а';
  111. } else {
  112. suffix = '-й';
  113. }
  114. return number + suffix;
  115. };
  116. var localize = {
  117. ordinalNumber: ordinalNumber,
  118. era: (0, _index.default)({
  119. values: eraValues,
  120. defaultWidth: 'wide'
  121. }),
  122. quarter: (0, _index.default)({
  123. values: quarterValues,
  124. defaultWidth: 'wide',
  125. argumentCallback: function argumentCallback(quarter) {
  126. return quarter - 1;
  127. }
  128. }),
  129. month: (0, _index.default)({
  130. values: monthValues,
  131. defaultWidth: 'wide',
  132. formattingValues: formattingMonthValues,
  133. defaultFormattingWidth: 'wide'
  134. }),
  135. day: (0, _index.default)({
  136. values: dayValues,
  137. defaultWidth: 'wide'
  138. }),
  139. dayPeriod: (0, _index.default)({
  140. values: dayPeriodValues,
  141. defaultWidth: 'any',
  142. formattingValues: formattingDayPeriodValues,
  143. defaultFormattingWidth: 'wide'
  144. })
  145. };
  146. var _default = localize;
  147. exports.default = _default;
  148. module.exports = exports.default;