index.js 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136
  1. import buildLocalizeFn from "../../../_lib/buildLocalizeFn/index.js";
  2. var eraValues = {
  3. narrow: ['ab. J.C.', 'apr. J.C.'],
  4. abbreviated: ['ab. J.C.', 'apr. J.C.'],
  5. wide: ['abans Jèsus-Crist', 'après Jèsus-Crist']
  6. };
  7. var quarterValues = {
  8. narrow: ['T1', 'T2', 'T3', 'T4'],
  9. abbreviated: ['1èr trim.', '2nd trim.', '3en trim.', '4en trim.'],
  10. wide: ['1èr trimèstre', '2nd trimèstre', '3en trimèstre', '4en trimèstre']
  11. };
  12. var monthValues = {
  13. narrow: ['GN', 'FB', 'MÇ', 'AB', 'MA', 'JN', 'JL', 'AG', 'ST', 'OC', 'NV', 'DC'],
  14. abbreviated: ['gen.', 'febr.', 'març', 'abr.', 'mai', 'junh', 'jul.', 'ag.', 'set.', 'oct.', 'nov.', 'dec.'],
  15. wide: ['genièr', 'febrièr', 'març', 'abril', 'mai', 'junh', 'julhet', 'agost', 'setembre', 'octòbre', 'novembre', 'decembre']
  16. };
  17. var dayValues = {
  18. narrow: ['dg.', 'dl.', 'dm.', 'dc.', 'dj.', 'dv.', 'ds.'],
  19. short: ['dg.', 'dl.', 'dm.', 'dc.', 'dj.', 'dv.', 'ds.'],
  20. abbreviated: ['dg.', 'dl.', 'dm.', 'dc.', 'dj.', 'dv.', 'ds.'],
  21. wide: ['dimenge', 'diluns', 'dimars', 'dimècres', 'dijòus', 'divendres', 'dissabte']
  22. };
  23. var dayPeriodValues = {
  24. narrow: {
  25. am: 'am',
  26. pm: 'pm',
  27. midnight: 'mièjanuèch',
  28. noon: 'miègjorn',
  29. morning: 'matin',
  30. afternoon: 'aprèp-miègjorn',
  31. evening: 'vèspre',
  32. night: 'nuèch'
  33. },
  34. abbreviated: {
  35. am: 'a.m.',
  36. pm: 'p.m.',
  37. midnight: 'mièjanuèch',
  38. noon: 'miègjorn',
  39. morning: 'matin',
  40. afternoon: 'aprèp-miègjorn',
  41. evening: 'vèspre',
  42. night: 'nuèch'
  43. },
  44. wide: {
  45. am: 'a.m.',
  46. pm: 'p.m.',
  47. midnight: 'mièjanuèch',
  48. noon: 'miègjorn',
  49. morning: 'matin',
  50. afternoon: 'aprèp-miègjorn',
  51. evening: 'vèspre',
  52. night: 'nuèch'
  53. }
  54. };
  55. var formattingDayPeriodValues = {
  56. narrow: {
  57. am: 'am',
  58. pm: 'pm',
  59. midnight: 'mièjanuèch',
  60. noon: 'miègjorn',
  61. morning: 'del matin',
  62. afternoon: 'de l’aprèp-miègjorn',
  63. evening: 'del ser',
  64. night: 'de la nuèch'
  65. },
  66. abbreviated: {
  67. am: 'AM',
  68. pm: 'PM',
  69. midnight: 'mièjanuèch',
  70. noon: 'miègjorn',
  71. morning: 'del matin',
  72. afternoon: 'de l’aprèp-miègjorn',
  73. evening: 'del ser',
  74. night: 'de la nuèch'
  75. },
  76. wide: {
  77. am: 'ante meridiem',
  78. pm: 'post meridiem',
  79. midnight: 'mièjanuèch',
  80. noon: 'miègjorn',
  81. morning: 'del matin',
  82. afternoon: 'de l’aprèp-miègjorn',
  83. evening: 'del ser',
  84. night: 'de la nuèch'
  85. }
  86. };
  87. var ordinalNumber = function ordinalNumber(dirtyNumber, options) {
  88. var number = Number(dirtyNumber);
  89. var unit = options === null || options === void 0 ? void 0 : options.unit;
  90. var ordinal;
  91. switch (number) {
  92. case 1:
  93. ordinal = 'èr';
  94. break;
  95. case 2:
  96. ordinal = 'nd';
  97. break;
  98. default:
  99. ordinal = 'en';
  100. }
  101. // feminine for year, week, hour, minute, second
  102. if (unit === 'year' || unit === 'week' || unit === 'hour' || unit === 'minute' || unit === 'second') {
  103. ordinal += 'a';
  104. }
  105. return number + ordinal;
  106. };
  107. var localize = {
  108. ordinalNumber: ordinalNumber,
  109. era: buildLocalizeFn({
  110. values: eraValues,
  111. defaultWidth: 'wide'
  112. }),
  113. quarter: buildLocalizeFn({
  114. values: quarterValues,
  115. defaultWidth: 'wide',
  116. argumentCallback: function argumentCallback(quarter) {
  117. return quarter - 1;
  118. }
  119. }),
  120. month: buildLocalizeFn({
  121. values: monthValues,
  122. defaultWidth: 'wide'
  123. }),
  124. day: buildLocalizeFn({
  125. values: dayValues,
  126. defaultWidth: 'wide'
  127. }),
  128. dayPeriod: buildLocalizeFn({
  129. values: dayPeriodValues,
  130. defaultWidth: 'wide',
  131. formattingValues: formattingDayPeriodValues,
  132. defaultFormattingWidth: 'wide'
  133. })
  134. };
  135. export default localize;