localize.js 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192
  1. import { buildLocalizeFn } from "../../_lib/buildLocalizeFn.js";
  2. const eraValues = {
  3. narrow: ["př. n. l.", "n. l."],
  4. abbreviated: ["př. n. l.", "n. l."],
  5. wide: ["před naším letopočtem", "našeho letopočtu"],
  6. };
  7. const quarterValues = {
  8. narrow: ["1", "2", "3", "4"],
  9. abbreviated: ["1. čtvrtletí", "2. čtvrtletí", "3. čtvrtletí", "4. čtvrtletí"],
  10. wide: ["1. čtvrtletí", "2. čtvrtletí", "3. čtvrtletí", "4. čtvrtletí"],
  11. };
  12. const monthValues = {
  13. narrow: ["L", "Ú", "B", "D", "K", "Č", "Č", "S", "Z", "Ř", "L", "P"],
  14. abbreviated: [
  15. "led",
  16. "úno",
  17. "bře",
  18. "dub",
  19. "kvě",
  20. "čvn",
  21. "čvc",
  22. "srp",
  23. "zář",
  24. "říj",
  25. "lis",
  26. "pro",
  27. ],
  28. wide: [
  29. "leden",
  30. "únor",
  31. "březen",
  32. "duben",
  33. "květen",
  34. "červen",
  35. "červenec",
  36. "srpen",
  37. "září",
  38. "říjen",
  39. "listopad",
  40. "prosinec",
  41. ],
  42. };
  43. const formattingMonthValues = {
  44. narrow: ["L", "Ú", "B", "D", "K", "Č", "Č", "S", "Z", "Ř", "L", "P"],
  45. abbreviated: [
  46. "led",
  47. "úno",
  48. "bře",
  49. "dub",
  50. "kvě",
  51. "čvn",
  52. "čvc",
  53. "srp",
  54. "zář",
  55. "říj",
  56. "lis",
  57. "pro",
  58. ],
  59. wide: [
  60. "ledna",
  61. "února",
  62. "března",
  63. "dubna",
  64. "května",
  65. "června",
  66. "července",
  67. "srpna",
  68. "září",
  69. "října",
  70. "listopadu",
  71. "prosince",
  72. ],
  73. };
  74. const dayValues = {
  75. narrow: ["ne", "po", "út", "st", "čt", "pá", "so"],
  76. short: ["ne", "po", "út", "st", "čt", "pá", "so"],
  77. abbreviated: ["ned", "pon", "úte", "stř", "čtv", "pát", "sob"],
  78. wide: ["neděle", "pondělí", "úterý", "středa", "čtvrtek", "pátek", "sobota"],
  79. };
  80. const dayPeriodValues = {
  81. narrow: {
  82. am: "dop.",
  83. pm: "odp.",
  84. midnight: "půlnoc",
  85. noon: "poledne",
  86. morning: "ráno",
  87. afternoon: "odpoledne",
  88. evening: "večer",
  89. night: "noc",
  90. },
  91. abbreviated: {
  92. am: "dop.",
  93. pm: "odp.",
  94. midnight: "půlnoc",
  95. noon: "poledne",
  96. morning: "ráno",
  97. afternoon: "odpoledne",
  98. evening: "večer",
  99. night: "noc",
  100. },
  101. wide: {
  102. am: "dopoledne",
  103. pm: "odpoledne",
  104. midnight: "půlnoc",
  105. noon: "poledne",
  106. morning: "ráno",
  107. afternoon: "odpoledne",
  108. evening: "večer",
  109. night: "noc",
  110. },
  111. };
  112. const formattingDayPeriodValues = {
  113. narrow: {
  114. am: "dop.",
  115. pm: "odp.",
  116. midnight: "půlnoc",
  117. noon: "poledne",
  118. morning: "ráno",
  119. afternoon: "odpoledne",
  120. evening: "večer",
  121. night: "noc",
  122. },
  123. abbreviated: {
  124. am: "dop.",
  125. pm: "odp.",
  126. midnight: "půlnoc",
  127. noon: "poledne",
  128. morning: "ráno",
  129. afternoon: "odpoledne",
  130. evening: "večer",
  131. night: "noc",
  132. },
  133. wide: {
  134. am: "dopoledne",
  135. pm: "odpoledne",
  136. midnight: "půlnoc",
  137. noon: "poledne",
  138. morning: "ráno",
  139. afternoon: "odpoledne",
  140. evening: "večer",
  141. night: "noc",
  142. },
  143. };
  144. const ordinalNumber = (dirtyNumber, _options) => {
  145. const number = Number(dirtyNumber);
  146. return number + ".";
  147. };
  148. export const localize = {
  149. ordinalNumber,
  150. era: buildLocalizeFn({
  151. values: eraValues,
  152. defaultWidth: "wide",
  153. }),
  154. quarter: buildLocalizeFn({
  155. values: quarterValues,
  156. defaultWidth: "wide",
  157. argumentCallback: (quarter) => quarter - 1,
  158. }),
  159. month: buildLocalizeFn({
  160. values: monthValues,
  161. defaultWidth: "wide",
  162. formattingValues: formattingMonthValues,
  163. defaultFormattingWidth: "wide",
  164. }),
  165. day: buildLocalizeFn({
  166. values: dayValues,
  167. defaultWidth: "wide",
  168. }),
  169. dayPeriod: buildLocalizeFn({
  170. values: dayPeriodValues,
  171. defaultWidth: "wide",
  172. formattingValues: formattingDayPeriodValues,
  173. defaultFormattingWidth: "wide",
  174. }),
  175. };