pl.js 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105
  1. //! moment.js locale configuration
  2. //! locale : polish (pl)
  3. //! author : Rafal Hirsz : https://github.com/evoL
  4. ;(function (global, factory) {
  5. typeof exports === 'object' && typeof module !== 'undefined'
  6. && typeof require === 'function' ? factory(require('../moment')) :
  7. typeof define === 'function' && define.amd ? define(['moment'], factory) :
  8. factory(global.moment)
  9. }(this, function (moment) { 'use strict';
  10. var monthsNominative = 'styczeń_luty_marzec_kwiecień_maj_czerwiec_lipiec_sierpień_wrzesień_październik_listopad_grudzień'.split('_'),
  11. monthsSubjective = 'stycznia_lutego_marca_kwietnia_maja_czerwca_lipca_sierpnia_września_października_listopada_grudnia'.split('_');
  12. function plural(n) {
  13. return (n % 10 < 5) && (n % 10 > 1) && ((~~(n / 10) % 10) !== 1);
  14. }
  15. function translate(number, withoutSuffix, key) {
  16. var result = number + ' ';
  17. switch (key) {
  18. case 'm':
  19. return withoutSuffix ? 'minuta' : 'minutę';
  20. case 'mm':
  21. return result + (plural(number) ? 'minuty' : 'minut');
  22. case 'h':
  23. return withoutSuffix ? 'godzina' : 'godzinę';
  24. case 'hh':
  25. return result + (plural(number) ? 'godziny' : 'godzin');
  26. case 'MM':
  27. return result + (plural(number) ? 'miesiące' : 'miesięcy');
  28. case 'yy':
  29. return result + (plural(number) ? 'lata' : 'lat');
  30. }
  31. }
  32. var pl = moment.defineLocale('pl', {
  33. months : function (momentToFormat, format) {
  34. if (format === '') {
  35. // Hack: if format empty we know this is used to generate
  36. // RegExp by moment. Give then back both valid forms of months
  37. // in RegExp ready format.
  38. return '(' + monthsSubjective[momentToFormat.month()] + '|' + monthsNominative[momentToFormat.month()] + ')';
  39. } else if (/D MMMM/.test(format)) {
  40. return monthsSubjective[momentToFormat.month()];
  41. } else {
  42. return monthsNominative[momentToFormat.month()];
  43. }
  44. },
  45. monthsShort : 'sty_lut_mar_kwi_maj_cze_lip_sie_wrz_paź_lis_gru'.split('_'),
  46. weekdays : 'niedziela_poniedziałek_wtorek_środa_czwartek_piątek_sobota'.split('_'),
  47. weekdaysShort : 'nie_pon_wt_śr_czw_pt_sb'.split('_'),
  48. weekdaysMin : 'Nd_Pn_Wt_Śr_Cz_Pt_So'.split('_'),
  49. longDateFormat : {
  50. LT : 'HH:mm',
  51. LTS : 'HH:mm:ss',
  52. L : 'DD.MM.YYYY',
  53. LL : 'D MMMM YYYY',
  54. LLL : 'D MMMM YYYY HH:mm',
  55. LLLL : 'dddd, D MMMM YYYY HH:mm'
  56. },
  57. calendar : {
  58. sameDay: '[Dziś o] LT',
  59. nextDay: '[Jutro o] LT',
  60. nextWeek: '[W] dddd [o] LT',
  61. lastDay: '[Wczoraj o] LT',
  62. lastWeek: function () {
  63. switch (this.day()) {
  64. case 0:
  65. return '[W zeszłą niedzielę o] LT';
  66. case 3:
  67. return '[W zeszłą środę o] LT';
  68. case 6:
  69. return '[W zeszłą sobotę o] LT';
  70. default:
  71. return '[W zeszły] dddd [o] LT';
  72. }
  73. },
  74. sameElse: 'L'
  75. },
  76. relativeTime : {
  77. future : 'za %s',
  78. past : '%s temu',
  79. s : 'kilka sekund',
  80. m : translate,
  81. mm : translate,
  82. h : translate,
  83. hh : translate,
  84. d : '1 dzień',
  85. dd : '%d dni',
  86. M : 'miesiąc',
  87. MM : translate,
  88. y : 'rok',
  89. yy : translate
  90. },
  91. ordinalParse: /\d{1,2}\./,
  92. ordinal : '%d.',
  93. week : {
  94. dow : 1, // Monday is the first day of the week.
  95. doy : 4 // The week that contains Jan 4th is the first week of the year.
  96. }
  97. });
  98. return pl;
  99. }));