index.js 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133
  1. import buildLocalizeFn from "../../../_lib/buildLocalizeFn/index.js";
  2. var eraValues = {
  3. narrow: ['Ք', 'Մ'],
  4. abbreviated: ['ՔԱ', 'ՄԹ'],
  5. wide: ['Քրիստոսից առաջ', 'Մեր թվարկության']
  6. };
  7. var quarterValues = {
  8. narrow: ['1', '2', '3', '4'],
  9. abbreviated: ['Ք1', 'Ք2', 'Ք3', 'Ք4'],
  10. wide: ['1֊ին քառորդ', '2֊րդ քառորդ', '3֊րդ քառորդ', '4֊րդ քառորդ']
  11. };
  12. var monthValues = {
  13. narrow: ['Հ', 'Փ', 'Մ', 'Ա', 'Մ', 'Հ', 'Հ', 'Օ', 'Ս', 'Հ', 'Ն', 'Դ'],
  14. abbreviated: ['հուն', 'փետ', 'մար', 'ապր', 'մայ', 'հուն', 'հուլ', 'օգս', 'սեպ', 'հոկ', 'նոյ', 'դեկ'],
  15. wide: ['հունվար', 'փետրվար', 'մարտ', 'ապրիլ', 'մայիս', 'հունիս', 'հուլիս', 'օգոստոս', 'սեպտեմբեր', 'հոկտեմբեր', 'նոյեմբեր', 'դեկտեմբեր']
  16. };
  17. var dayValues = {
  18. narrow: ['Կ', 'Ե', 'Ե', 'Չ', 'Հ', 'Ո', 'Շ'],
  19. short: ['կր', 'եր', 'եք', 'չք', 'հգ', 'ուր', 'շբ'],
  20. abbreviated: ['կիր', 'երկ', 'երք', 'չոր', 'հնգ', 'ուրբ', 'շաբ'],
  21. wide: ['կիրակի', 'երկուշաբթի', 'երեքշաբթի', 'չորեքշաբթի', 'հինգշաբթի', 'ուրբաթ', 'շաբաթ']
  22. };
  23. var dayPeriodValues = {
  24. narrow: {
  25. am: 'a',
  26. pm: 'p',
  27. midnight: 'կեսգշ',
  28. noon: 'կեսօր',
  29. morning: 'առավոտ',
  30. afternoon: 'ցերեկ',
  31. evening: 'երեկո',
  32. night: 'գիշեր'
  33. },
  34. abbreviated: {
  35. am: 'AM',
  36. pm: 'PM',
  37. midnight: 'կեսգիշեր',
  38. noon: 'կեսօր',
  39. morning: 'առավոտ',
  40. afternoon: 'ցերեկ',
  41. evening: 'երեկո',
  42. night: 'գիշեր'
  43. },
  44. wide: {
  45. am: 'a.m.',
  46. pm: 'p.m.',
  47. midnight: 'կեսգիշեր',
  48. noon: 'կեսօր',
  49. morning: 'առավոտ',
  50. afternoon: 'ցերեկ',
  51. evening: 'երեկո',
  52. night: 'գիշեր'
  53. }
  54. };
  55. var formattingDayPeriodValues = {
  56. narrow: {
  57. am: 'a',
  58. pm: 'p',
  59. midnight: 'կեսգշ',
  60. noon: 'կեսօր',
  61. morning: 'առավոտը',
  62. afternoon: 'ցերեկը',
  63. evening: 'երեկոյան',
  64. night: 'գիշերը'
  65. },
  66. abbreviated: {
  67. am: 'AM',
  68. pm: 'PM',
  69. midnight: 'կեսգիշերին',
  70. noon: 'կեսօրին',
  71. morning: 'առավոտը',
  72. afternoon: 'ցերեկը',
  73. evening: 'երեկոյան',
  74. night: 'գիշերը'
  75. },
  76. wide: {
  77. am: 'a.m.',
  78. pm: 'p.m.',
  79. midnight: 'կեսգիշերին',
  80. noon: 'կեսօրին',
  81. morning: 'առավոտը',
  82. afternoon: 'ցերեկը',
  83. evening: 'երեկոյան',
  84. night: 'գիշերը'
  85. }
  86. };
  87. var ordinalNumber = function ordinalNumber(dirtyNumber, _options) {
  88. var number = Number(dirtyNumber);
  89. // If ordinal numbers depend on context, for example,
  90. // if they are different for different grammatical genders,
  91. // use `options.unit`.
  92. //
  93. // `unit` can be 'year', 'quarter', 'month', 'week', 'date', 'dayOfYear',
  94. // 'day', 'hour', 'minute', 'second'.
  95. var rem100 = number % 100;
  96. if (rem100 < 10) {
  97. if (rem100 % 10 === 1) {
  98. return number + '֊ին';
  99. }
  100. }
  101. return number + '֊րդ';
  102. };
  103. var localize = {
  104. ordinalNumber: ordinalNumber,
  105. era: buildLocalizeFn({
  106. values: eraValues,
  107. defaultWidth: 'wide'
  108. }),
  109. quarter: buildLocalizeFn({
  110. values: quarterValues,
  111. defaultWidth: 'wide',
  112. argumentCallback: function argumentCallback(quarter) {
  113. return quarter - 1;
  114. }
  115. }),
  116. month: buildLocalizeFn({
  117. values: monthValues,
  118. defaultWidth: 'wide'
  119. }),
  120. day: buildLocalizeFn({
  121. values: dayValues,
  122. defaultWidth: 'wide'
  123. }),
  124. dayPeriod: buildLocalizeFn({
  125. values: dayPeriodValues,
  126. defaultWidth: 'wide',
  127. formattingValues: formattingDayPeriodValues,
  128. defaultFormattingWidth: 'wide'
  129. })
  130. };
  131. export default localize;