ar.js (6176B)
1//! moment.js locale configuration 2//! locale : Arabic [ar] 3//! author : Abdel Said: https://github.com/abdelsaid 4//! author : Ahmed Elkhatib 5//! author : forabi https://github.com/forabi 6 7;(function (global, factory) { 8 typeof exports === 'object' && typeof module !== 'undefined' 9 && typeof require === 'function' ? factory(require('../moment')) : 10 typeof define === 'function' && define.amd ? define(['../moment'], factory) : 11 factory(global.moment) 12}(this, (function (moment) { 'use strict'; 13 14 //! moment.js locale configuration 15 16 var symbolMap = { 17 1: '١', 18 2: '٢', 19 3: '٣', 20 4: '٤', 21 5: '٥', 22 6: '٦', 23 7: '٧', 24 8: '٨', 25 9: '٩', 26 0: '٠', 27 }, 28 numberMap = { 29 '١': '1', 30 '٢': '2', 31 '٣': '3', 32 '٤': '4', 33 '٥': '5', 34 '٦': '6', 35 '٧': '7', 36 '٨': '8', 37 '٩': '9', 38 '٠': '0', 39 }, 40 pluralForm = function (n) { 41 return n === 0 42 ? 0 43 : n === 1 44 ? 1 45 : n === 2 46 ? 2 47 : n % 100 >= 3 && n % 100 <= 10 48 ? 3 49 : n % 100 >= 11 50 ? 4 51 : 5; 52 }, 53 plurals = { 54 s: [ 55 'أقل من ثانية', 56 'ثانية واحدة', 57 ['ثانيتان', 'ثانيتين'], 58 '%d ثوان', 59 '%d ثانية', 60 '%d ثانية', 61 ], 62 m: [ 63 'أقل من دقيقة', 64 'دقيقة واحدة', 65 ['دقيقتان', 'دقيقتين'], 66 '%d دقائق', 67 '%d دقيقة', 68 '%d دقيقة', 69 ], 70 h: [ 71 'أقل من ساعة', 72 'ساعة واحدة', 73 ['ساعتان', 'ساعتين'], 74 '%d ساعات', 75 '%d ساعة', 76 '%d ساعة', 77 ], 78 d: [ 79 'أقل من يوم', 80 'يوم واحد', 81 ['يومان', 'يومين'], 82 '%d أيام', 83 '%d يومًا', 84 '%d يوم', 85 ], 86 M: [ 87 'أقل من شهر', 88 'شهر واحد', 89 ['شهران', 'شهرين'], 90 '%d أشهر', 91 '%d شهرا', 92 '%d شهر', 93 ], 94 y: [ 95 'أقل من عام', 96 'عام واحد', 97 ['عامان', 'عامين'], 98 '%d أعوام', 99 '%d عامًا', 100 '%d عام', 101 ], 102 }, 103 pluralize = function (u) { 104 return function (number, withoutSuffix, string, isFuture) { 105 var f = pluralForm(number), 106 str = plurals[u][pluralForm(number)]; 107 if (f === 2) { 108 str = str[withoutSuffix ? 0 : 1]; 109 } 110 return str.replace(/%d/i, number); 111 }; 112 }, 113 months = [ 114 'يناير', 115 'فبراير', 116 'مارس', 117 'أبريل', 118 'مايو', 119 'يونيو', 120 'يوليو', 121 'أغسطس', 122 'سبتمبر', 123 'أكتوبر', 124 'نوفمبر', 125 'ديسمبر', 126 ]; 127 128 var ar = moment.defineLocale('ar', { 129 months: months, 130 monthsShort: months, 131 weekdays: 'الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت'.split('_'), 132 weekdaysShort: 'أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت'.split('_'), 133 weekdaysMin: 'ح_ن_ث_ر_خ_ج_س'.split('_'), 134 weekdaysParseExact: true, 135 longDateFormat: { 136 LT: 'HH:mm', 137 LTS: 'HH:mm:ss', 138 L: 'D/\u200FM/\u200FYYYY', 139 LL: 'D MMMM YYYY', 140 LLL: 'D MMMM YYYY HH:mm', 141 LLLL: 'dddd D MMMM YYYY HH:mm', 142 }, 143 meridiemParse: /ص|م/, 144 isPM: function (input) { 145 return 'م' === input; 146 }, 147 meridiem: function (hour, minute, isLower) { 148 if (hour < 12) { 149 return 'ص'; 150 } else { 151 return 'م'; 152 } 153 }, 154 calendar: { 155 sameDay: '[اليوم عند الساعة] LT', 156 nextDay: '[غدًا عند الساعة] LT', 157 nextWeek: 'dddd [عند الساعة] LT', 158 lastDay: '[أمس عند الساعة] LT', 159 lastWeek: 'dddd [عند الساعة] LT', 160 sameElse: 'L', 161 }, 162 relativeTime: { 163 future: 'بعد %s', 164 past: 'منذ %s', 165 s: pluralize('s'), 166 ss: pluralize('s'), 167 m: pluralize('m'), 168 mm: pluralize('m'), 169 h: pluralize('h'), 170 hh: pluralize('h'), 171 d: pluralize('d'), 172 dd: pluralize('d'), 173 M: pluralize('M'), 174 MM: pluralize('M'), 175 y: pluralize('y'), 176 yy: pluralize('y'), 177 }, 178 preparse: function (string) { 179 return string 180 .replace(/[١٢٣٤٥٦٧٨٩٠]/g, function (match) { 181 return numberMap[match]; 182 }) 183 .replace(/،/g, ','); 184 }, 185 postformat: function (string) { 186 return string 187 .replace(/\d/g, function (match) { 188 return symbolMap[match]; 189 }) 190 .replace(/,/g, '،'); 191 }, 192 week: { 193 dow: 6, // Saturday is the first day of the week. 194 doy: 12, // The week that contains Jan 12th is the first week of the year. 195 }, 196 }); 197 198 return ar; 199 200})));