ar.js 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. // Arabic [ar]
  2. import dayjs from '../index';
  3. var months = 'يناير_فبراير_مارس_أبريل_مايو_يونيو_يوليو_أغسطس_سبتمبر_أكتوبر_نوفمبر_ديسمبر'.split('_');
  4. var symbolMap = {
  5. 1: '١',
  6. 2: '٢',
  7. 3: '٣',
  8. 4: '٤',
  9. 5: '٥',
  10. 6: '٦',
  11. 7: '٧',
  12. 8: '٨',
  13. 9: '٩',
  14. 0: '٠'
  15. };
  16. var numberMap = {
  17. '١': '1',
  18. '٢': '2',
  19. '٣': '3',
  20. '٤': '4',
  21. '٥': '5',
  22. '٦': '6',
  23. '٧': '7',
  24. '٨': '8',
  25. '٩': '9',
  26. '٠': '0'
  27. };
  28. var fromArabNumeralsRegex = /[١٢٣٤٥٦٧٨٩٠]/g;
  29. var fromArabComaRegex = /،/g;
  30. var toArabNumeralsRegex = /\d/g;
  31. var toArabComaRegex = /,/g;
  32. var locale = {
  33. name: 'ar',
  34. weekdays: 'الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت'.split('_'),
  35. weekdaysShort: 'أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت'.split('_'),
  36. weekdaysMin: 'ح_ن_ث_ر_خ_ج_س'.split('_'),
  37. months: months,
  38. monthsShort: months,
  39. weekStart: 6,
  40. meridiem: function meridiem(hour) {
  41. return hour > 12 ? 'م' : 'ص';
  42. },
  43. relativeTime: {
  44. future: 'بعد %s',
  45. past: 'منذ %s',
  46. s: 'ثانية واحدة',
  47. m: 'دقيقة واحدة',
  48. mm: '%d دقائق',
  49. h: 'ساعة واحدة',
  50. hh: '%d ساعات',
  51. d: 'يوم واحد',
  52. dd: '%d أيام',
  53. M: 'شهر واحد',
  54. MM: '%d أشهر',
  55. y: 'عام واحد',
  56. yy: '%d أعوام'
  57. },
  58. preparse: function preparse(string) {
  59. return string.replace(fromArabNumeralsRegex, function (match) {
  60. return numberMap[match];
  61. }).replace(fromArabComaRegex, ',');
  62. },
  63. postformat: function postformat(string) {
  64. return string.replace(toArabNumeralsRegex, function (match) {
  65. return symbolMap[match];
  66. }).replace(toArabComaRegex, '،');
  67. },
  68. ordinal: function ordinal(n) {
  69. return n;
  70. },
  71. formats: {
  72. LT: 'HH:mm',
  73. LTS: 'HH:mm:ss',
  74. L: 'D/‏M/‏YYYY',
  75. LL: 'D MMMM YYYY',
  76. LLL: 'D MMMM YYYY HH:mm',
  77. LLLL: 'dddd D MMMM YYYY HH:mm'
  78. }
  79. };
  80. dayjs.locale(locale, null, true);
  81. export default locale;