localize.js 4.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224
  1. import { buildLocalizeFn } from "../../_lib/buildLocalizeFn.js";
  2. const eraValues = {
  3. narrow: ["pr. Kr.", "po Kr."],
  4. abbreviated: ["pr. Kr.", "po Kr."],
  5. wide: ["prieš Kristų", "po Kristaus"],
  6. };
  7. const quarterValues = {
  8. narrow: ["1", "2", "3", "4"],
  9. abbreviated: ["I ketv.", "II ketv.", "III ketv.", "IV ketv."],
  10. wide: ["I ketvirtis", "II ketvirtis", "III ketvirtis", "IV ketvirtis"],
  11. };
  12. const formattingQuarterValues = {
  13. narrow: ["1", "2", "3", "4"],
  14. abbreviated: ["I k.", "II k.", "III k.", "IV k."],
  15. wide: ["I ketvirtis", "II ketvirtis", "III ketvirtis", "IV ketvirtis"],
  16. };
  17. const monthValues = {
  18. narrow: ["S", "V", "K", "B", "G", "B", "L", "R", "R", "S", "L", "G"],
  19. abbreviated: [
  20. "saus.",
  21. "vas.",
  22. "kov.",
  23. "bal.",
  24. "geg.",
  25. "birž.",
  26. "liep.",
  27. "rugp.",
  28. "rugs.",
  29. "spal.",
  30. "lapkr.",
  31. "gruod.",
  32. ],
  33. wide: [
  34. "sausis",
  35. "vasaris",
  36. "kovas",
  37. "balandis",
  38. "gegužė",
  39. "birželis",
  40. "liepa",
  41. "rugpjūtis",
  42. "rugsėjis",
  43. "spalis",
  44. "lapkritis",
  45. "gruodis",
  46. ],
  47. };
  48. const formattingMonthValues = {
  49. narrow: ["S", "V", "K", "B", "G", "B", "L", "R", "R", "S", "L", "G"],
  50. abbreviated: [
  51. "saus.",
  52. "vas.",
  53. "kov.",
  54. "bal.",
  55. "geg.",
  56. "birž.",
  57. "liep.",
  58. "rugp.",
  59. "rugs.",
  60. "spal.",
  61. "lapkr.",
  62. "gruod.",
  63. ],
  64. wide: [
  65. "sausio",
  66. "vasario",
  67. "kovo",
  68. "balandžio",
  69. "gegužės",
  70. "birželio",
  71. "liepos",
  72. "rugpjūčio",
  73. "rugsėjo",
  74. "spalio",
  75. "lapkričio",
  76. "gruodžio",
  77. ],
  78. };
  79. const dayValues = {
  80. narrow: ["S", "P", "A", "T", "K", "P", "Š"],
  81. short: ["Sk", "Pr", "An", "Tr", "Kt", "Pn", "Št"],
  82. abbreviated: ["sk", "pr", "an", "tr", "kt", "pn", "št"],
  83. wide: [
  84. "sekmadienis",
  85. "pirmadienis",
  86. "antradienis",
  87. "trečiadienis",
  88. "ketvirtadienis",
  89. "penktadienis",
  90. "šeštadienis",
  91. ],
  92. };
  93. const formattingDayValues = {
  94. narrow: ["S", "P", "A", "T", "K", "P", "Š"],
  95. short: ["Sk", "Pr", "An", "Tr", "Kt", "Pn", "Št"],
  96. abbreviated: ["sk", "pr", "an", "tr", "kt", "pn", "št"],
  97. wide: [
  98. "sekmadienį",
  99. "pirmadienį",
  100. "antradienį",
  101. "trečiadienį",
  102. "ketvirtadienį",
  103. "penktadienį",
  104. "šeštadienį",
  105. ],
  106. };
  107. const dayPeriodValues = {
  108. narrow: {
  109. am: "pr. p.",
  110. pm: "pop.",
  111. midnight: "vidurnaktis",
  112. noon: "vidurdienis",
  113. morning: "rytas",
  114. afternoon: "diena",
  115. evening: "vakaras",
  116. night: "naktis",
  117. },
  118. abbreviated: {
  119. am: "priešpiet",
  120. pm: "popiet",
  121. midnight: "vidurnaktis",
  122. noon: "vidurdienis",
  123. morning: "rytas",
  124. afternoon: "diena",
  125. evening: "vakaras",
  126. night: "naktis",
  127. },
  128. wide: {
  129. am: "priešpiet",
  130. pm: "popiet",
  131. midnight: "vidurnaktis",
  132. noon: "vidurdienis",
  133. morning: "rytas",
  134. afternoon: "diena",
  135. evening: "vakaras",
  136. night: "naktis",
  137. },
  138. };
  139. const formattingDayPeriodValues = {
  140. narrow: {
  141. am: "pr. p.",
  142. pm: "pop.",
  143. midnight: "vidurnaktis",
  144. noon: "perpiet",
  145. morning: "rytas",
  146. afternoon: "popietė",
  147. evening: "vakaras",
  148. night: "naktis",
  149. },
  150. abbreviated: {
  151. am: "priešpiet",
  152. pm: "popiet",
  153. midnight: "vidurnaktis",
  154. noon: "perpiet",
  155. morning: "rytas",
  156. afternoon: "popietė",
  157. evening: "vakaras",
  158. night: "naktis",
  159. },
  160. wide: {
  161. am: "priešpiet",
  162. pm: "popiet",
  163. midnight: "vidurnaktis",
  164. noon: "perpiet",
  165. morning: "rytas",
  166. afternoon: "popietė",
  167. evening: "vakaras",
  168. night: "naktis",
  169. },
  170. };
  171. const ordinalNumber = (dirtyNumber, _options) => {
  172. const number = Number(dirtyNumber);
  173. return number + "-oji";
  174. };
  175. export const localize = {
  176. ordinalNumber,
  177. era: buildLocalizeFn({
  178. values: eraValues,
  179. defaultWidth: "wide",
  180. }),
  181. quarter: buildLocalizeFn({
  182. values: quarterValues,
  183. defaultWidth: "wide",
  184. formattingValues: formattingQuarterValues,
  185. defaultFormattingWidth: "wide",
  186. argumentCallback: (quarter) => quarter - 1,
  187. }),
  188. month: buildLocalizeFn({
  189. values: monthValues,
  190. defaultWidth: "wide",
  191. formattingValues: formattingMonthValues,
  192. defaultFormattingWidth: "wide",
  193. }),
  194. day: buildLocalizeFn({
  195. values: dayValues,
  196. defaultWidth: "wide",
  197. formattingValues: formattingDayValues,
  198. defaultFormattingWidth: "wide",
  199. }),
  200. dayPeriod: buildLocalizeFn({
  201. values: dayPeriodValues,
  202. defaultWidth: "wide",
  203. formattingValues: formattingDayPeriodValues,
  204. defaultFormattingWidth: "wide",
  205. }),
  206. };