pl.js 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687
  1. // Polish [pl]
  2. import dayjs from '../index';
  3. function plural(n) {
  4. return n % 10 < 5 && n % 10 > 1 && ~~(n / 10) % 10 !== 1; // eslint-disable-line
  5. }
  6. /* eslint-disable */
  7. function translate(number, withoutSuffix, key) {
  8. var result = number + " ";
  9. switch (key) {
  10. case 'm':
  11. return withoutSuffix ? 'minuta' : 'minutę';
  12. case 'mm':
  13. return result + (plural(number) ? 'minuty' : 'minut');
  14. case 'h':
  15. return withoutSuffix ? 'godzina' : 'godzinę';
  16. case 'hh':
  17. return result + (plural(number) ? 'godziny' : 'godzin');
  18. case 'MM':
  19. return result + (plural(number) ? 'miesiące' : 'miesięcy');
  20. case 'yy':
  21. return result + (plural(number) ? 'lata' : 'lat');
  22. }
  23. }
  24. /* eslint-enable */
  25. var monthFormat = 'stycznia_lutego_marca_kwietnia_maja_czerwca_lipca_sierpnia_września_października_listopada_grudnia'.split('_');
  26. var monthStandalone = 'styczeń_luty_marzec_kwiecień_maj_czerwiec_lipiec_sierpień_wrzesień_październik_listopad_grudzień'.split('_');
  27. var MONTHS_IN_FORMAT = /D MMMM/;
  28. var months = function months(dayjsInstance, format) {
  29. if (MONTHS_IN_FORMAT.test(format)) {
  30. return monthFormat[dayjsInstance.month()];
  31. }
  32. return monthStandalone[dayjsInstance.month()];
  33. };
  34. months.s = monthStandalone;
  35. months.f = monthFormat;
  36. var locale = {
  37. name: 'pl',
  38. weekdays: 'niedziela_poniedziałek_wtorek_środa_czwartek_piątek_sobota'.split('_'),
  39. weekdaysShort: 'ndz_pon_wt_śr_czw_pt_sob'.split('_'),
  40. weekdaysMin: 'Nd_Pn_Wt_Śr_Cz_Pt_So'.split('_'),
  41. months: months,
  42. monthsShort: 'sty_lut_mar_kwi_maj_cze_lip_sie_wrz_paź_lis_gru'.split('_'),
  43. ordinal: function ordinal(n) {
  44. return n + ".";
  45. },
  46. weekStart: 1,
  47. yearStart: 4,
  48. relativeTime: {
  49. future: 'za %s',
  50. past: '%s temu',
  51. s: 'kilka sekund',
  52. m: translate,
  53. mm: translate,
  54. h: translate,
  55. hh: translate,
  56. d: '1 dzień',
  57. dd: '%d dni',
  58. M: 'miesiąc',
  59. MM: translate,
  60. y: 'rok',
  61. yy: translate
  62. },
  63. formats: {
  64. LT: 'HH:mm',
  65. LTS: 'HH:mm:ss',
  66. L: 'DD.MM.YYYY',
  67. LL: 'D MMMM YYYY',
  68. LLL: 'D MMMM YYYY HH:mm',
  69. LLLL: 'dddd, D MMMM YYYY HH:mm'
  70. }
  71. };
  72. dayjs.locale(locale, null, true);
  73. export default locale;