ar-sa.js 3.0 KB

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:
  34. 'يناير_فبراير_مارس_أبريل_مايو_يونيو_يوليو_أغسطس_سبتمبر_أكتوبر_نوفمبر_ديسمبر'.split(
  35. '_'
  36. ),
  37. weekdays: 'الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت'.split('_'),
  38. weekdaysShort: 'أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت'.split('_'),
  39. weekdaysMin: 'ح_ن_ث_ر_خ_ج_س'.split('_'),
  40. weekdaysParseExact: true,
  41. longDateFormat: {
  42. LT: 'HH:mm',
  43. LTS: 'HH:mm:ss',
  44. L: 'DD/MM/YYYY',
  45. LL: 'D MMMM YYYY',
  46. LLL: 'D MMMM YYYY HH:mm',
  47. LLLL: 'dddd D MMMM YYYY HH:mm',
  48. },
  49. meridiemParse: /ص|م/,
  50. isPM: function (input) {
  51. return 'م' === input;
  52. },
  53. meridiem: function (hour, minute, isLower) {
  54. if (hour < 12) {
  55. return 'ص';
  56. } else {
  57. return 'م';
  58. }
  59. },
  60. calendar: {
  61. sameDay: '[اليوم على الساعة] LT',
  62. nextDay: '[غدا على الساعة] LT',
  63. nextWeek: 'dddd [على الساعة] LT',
  64. lastDay: '[أمس على الساعة] LT',
  65. lastWeek: 'dddd [على الساعة] LT',
  66. sameElse: 'L',
  67. },
  68. relativeTime: {
  69. future: 'في %s',
  70. past: 'منذ %s',
  71. s: 'ثوان',
  72. ss: '%d ثانية',
  73. m: 'دقيقة',
  74. mm: '%d دقائق',
  75. h: 'ساعة',
  76. hh: '%d ساعات',
  77. d: 'يوم',
  78. dd: '%d أيام',
  79. M: 'شهر',
  80. MM: '%d أشهر',
  81. y: 'سنة',
  82. yy: '%d سنوات',
  83. },
  84. preparse: function (string) {
  85. return string
  86. .replace(/[١٢٣٤٥٦٧٨٩٠]/g, function (match) {
  87. return numberMap[match];
  88. })
  89. .replace(/،/g, ',');
  90. },
  91. postformat: function (string) {
  92. return string
  93. .replace(/\d/g, function (match) {
  94. return symbolMap[match];
  95. })
  96. .replace(/,/g, '،');
  97. },
  98. week: {
  99. dow: 0, // Sunday is the first day of the week.
  100. doy: 6, // The week that contains Jan 6th is the first week of the year.
  101. },
  102. });