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