ar-sa.js 3.0KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105
  1. //! moment.js locale configuration
  2. //! locale : Arabic (Saudi Arabia) [ar-sa]
  3. //! author : Suhail Alkowaileet : https://github.com/xsoh
  4. import moment from '../moment';
  5. var symbolMap = {
  6. 1: '١',
  7. 2: '٢',
  8. 3: '٣',
  9. 4: '٤',
  10. 5: '٥',
  11. 6: '٦',
  12. 7: '٧',
  13. 8: '٨',
  14. 9: '٩',
  15. 0: '٠',
  16. },
  17. numberMap = {
  18. '١': '1',
  19. '٢': '2',
  20. '٣': '3',
  21. '٤': '4',
  22. '٥': '5',
  23. '٦': '6',
  24. '٧': '7',
  25. '٨': '8',
  26. '٩': '9',
  27. '٠': '0',
  28. };
  29. export default moment.defineLocale('ar-sa', {
  30. months: 'يناير_فبراير_مارس_أبريل_مايو_يونيو_يوليو_أغسطس_سبتمبر_أكتوبر_نوفمبر_ديسمبر'.split(
  31. '_'
  32. ),
  33. monthsShort: 'يناير_فبراير_مارس_أبريل_مايو_يونيو_يوليو_أغسطس_سبتمبر_أكتوبر_نوفمبر_ديسمبر'.split(
  34. '_'
  35. ),
  36. weekdays: 'الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت'.split('_'),
  37. weekdaysShort: 'أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت'.split('_'),
  38. weekdaysMin: 'ح_ن_ث_ر_خ_ج_س'.split('_'),
  39. weekdaysParseExact: true,
  40. longDateFormat: {
  41. LT: 'HH:mm',
  42. LTS: 'HH:mm:ss',
  43. L: 'DD/MM/YYYY',
  44. LL: 'D MMMM YYYY',
  45. LLL: 'D MMMM YYYY HH:mm',
  46. LLLL: 'dddd D MMMM YYYY HH:mm',
  47. },
  48. meridiemParse: /ص|م/,
  49. isPM: function (input) {
  50. return 'م' === input;
  51. },
  52. meridiem: function (hour, minute, isLower) {
  53. if (hour < 12) {
  54. return 'ص';
  55. } else {
  56. return 'م';
  57. }
  58. },
  59. calendar: {
  60. sameDay: '[اليوم على الساعة] LT',
  61. nextDay: '[غدا على الساعة] LT',
  62. nextWeek: 'dddd [على الساعة] LT',
  63. lastDay: '[أمس على الساعة] LT',
  64. lastWeek: 'dddd [على الساعة] LT',
  65. sameElse: 'L',
  66. },
  67. relativeTime: {
  68. future: 'في %s',
  69. past: 'منذ %s',
  70. s: 'ثوان',
  71. ss: '%d ثانية',
  72. m: 'دقيقة',
  73. mm: '%d دقائق',
  74. h: 'ساعة',
  75. hh: '%d ساعات',
  76. d: 'يوم',
  77. dd: '%d أيام',
  78. M: 'شهر',
  79. MM: '%d أشهر',
  80. y: 'سنة',
  81. yy: '%d سنوات',
  82. },
  83. preparse: function (string) {
  84. return string
  85. .replace(/[١٢٣٤٥٦٧٨٩٠]/g, function (match) {
  86. return numberMap[match];
  87. })
  88. .replace(/،/g, ',');
  89. },
  90. postformat: function (string) {
  91. return string
  92. .replace(/\d/g, function (match) {
  93. return symbolMap[match];
  94. })
  95. .replace(/,/g, '،');
  96. },
  97. week: {
  98. dow: 0, // Sunday is the first day of the week.
  99. doy: 6, // The week that contains Jan 6th is the first week of the year.
  100. },
  101. });