You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

116 line
3.7KB

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