momentjs-rails 2.8.4 → 2.9.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/news.md +4 -1
- data/test/dummy/log/test.log +13 -0
- data/test/dummy/tmp/cache/assets/D3F/5F0/sprockets%2F4a6c53eae7c6e41a69a191578bbb6417 +0 -0
- data/test/dummy/tmp/cache/assets/D58/BD0/sprockets%2F4de9ddc9b725c715a54c98697b2528fe +0 -0
- data/test/dummy/tmp/cache/assets/D75/510/sprockets%2Fe690787ac522f47a6be024bfcc1767ee +0 -0
- data/test/integration/navigation_test.rb +1 -1
- data/vendor/assets/javascripts/moment.js +172 -65
- data/vendor/assets/javascripts/moment/af.js +4 -0
- data/vendor/assets/javascripts/moment/ar-sa.js +4 -0
- data/vendor/assets/javascripts/moment/ar-tn.js +55 -0
- data/vendor/assets/javascripts/moment/ar.js +4 -0
- data/vendor/assets/javascripts/moment/az.js +4 -0
- data/vendor/assets/javascripts/moment/be.js +4 -2
- data/vendor/assets/javascripts/moment/bn.js +4 -0
- data/vendor/assets/javascripts/moment/bo.js +4 -0
- data/vendor/assets/javascripts/moment/eo.js +4 -0
- data/vendor/assets/javascripts/moment/fa.js +4 -0
- data/vendor/assets/javascripts/moment/fy.js +69 -0
- data/vendor/assets/javascripts/moment/he.js +2 -0
- data/vendor/assets/javascripts/moment/hi.js +15 -0
- data/vendor/assets/javascripts/moment/hu.js +4 -0
- data/vendor/assets/javascripts/moment/hy-am.js +4 -0
- data/vendor/assets/javascripts/moment/id.js +13 -0
- data/vendor/assets/javascripts/moment/ja.js +4 -0
- data/vendor/assets/javascripts/moment/ko.js +4 -4
- data/vendor/assets/javascripts/moment/ml.js +4 -0
- data/vendor/assets/javascripts/moment/mr.js +15 -0
- data/vendor/assets/javascripts/moment/ms-my.js +13 -0
- data/vendor/assets/javascripts/moment/ne.js +15 -0
- data/vendor/assets/javascripts/moment/sq.js +4 -0
- data/vendor/assets/javascripts/moment/ta.js +29 -13
- data/vendor/assets/javascripts/moment/th.js +4 -0
- data/vendor/assets/javascripts/moment/uk.js +4 -0
- data/vendor/assets/javascripts/moment/zh-cn.js +15 -0
- data/vendor/assets/javascripts/moment/zh-tw.js +13 -0
- metadata +3 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 4b9e9c02dbe78ad6d4eb3239854c963a5f23b725
|
4
|
+
data.tar.gz: ada797a9bc2db96877bb52923dbc000a32cfc720
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 90ce6f19b0a7a30df26cbb0b3387956364913ee3ca0c919c7f99a28b44a9ee83cf967ae7e4f35ff68c4b2a5f6fdf101cc2757b283a30678e35a09c121960d531
|
7
|
+
data.tar.gz: 1fb792d48d16c571baf5aabbb2d666fb8db63a0bdc7e643bd8bf767a17a0e70ec9c9e6d33890cfe433c4369127443a2c58de1475f3722fe78ab3a438a9100976
|
data/news.md
CHANGED
data/test/dummy/log/test.log
CHANGED
@@ -46,3 +46,16 @@ Started GET "/assets/moment/fr.js" for 127.0.0.1 at 2015-01-12 15:44:26 -0500
|
|
46
46
|
Served asset /moment/fr.js - 200 OK (1ms)
|
47
47
|
Started GET "/assets/moment.js" for 127.0.0.1 at 2015-01-12 15:44:26 -0500
|
48
48
|
Served asset /moment.js - 200 OK (0ms)
|
49
|
+
Started GET "/assets/moment.js" for 127.0.0.1 at 2015-01-12 15:54:20 -0500
|
50
|
+
Compiled moment.js (1ms) (pid 23404)
|
51
|
+
Served asset /moment.js - 200 OK (12ms)
|
52
|
+
Started GET "/assets/moment/fr.js" for 127.0.0.1 at 2015-01-12 15:54:20 -0500
|
53
|
+
Served asset /moment/fr.js - 200 OK (1ms)
|
54
|
+
Started GET "/assets/moment.js" for 127.0.0.1 at 2015-01-12 15:54:20 -0500
|
55
|
+
Served asset /moment.js - 200 OK (0ms)
|
56
|
+
Started GET "/assets/moment.js" for 127.0.0.1 at 2015-01-12 15:56:44 -0500
|
57
|
+
Served asset /moment.js - 200 OK (3ms)
|
58
|
+
Started GET "/assets/moment/fr.js" for 127.0.0.1 at 2015-01-12 15:56:44 -0500
|
59
|
+
Served asset /moment/fr.js - 200 OK (1ms)
|
60
|
+
Started GET "/assets/moment.js" for 127.0.0.1 at 2015-01-12 15:56:44 -0500
|
61
|
+
Served asset /moment.js - 200 OK (0ms)
|
Binary file
|
Binary file
|
Binary file
|
@@ -8,7 +8,7 @@ class NavigationTest < ActionDispatch::IntegrationTest
|
|
8
8
|
|
9
9
|
test 'momentjs response is for the expected version' do
|
10
10
|
get '/assets/moment.js'
|
11
|
-
assert_match(/VERSION = '2\.
|
11
|
+
assert_match(/VERSION = '2\.9\.0'/, @response.body)
|
12
12
|
end
|
13
13
|
|
14
14
|
test 'can access momentjs translation' do
|
@@ -1,5 +1,5 @@
|
|
1
1
|
//! moment.js
|
2
|
-
//! version : 2.
|
2
|
+
//! version : 2.9.0
|
3
3
|
//! authors : Tim Wood, Iskren Chernev, Moment.js contributors
|
4
4
|
//! license : MIT
|
5
5
|
//! momentjs.com
|
@@ -10,9 +10,9 @@
|
|
10
10
|
************************************/
|
11
11
|
|
12
12
|
var moment,
|
13
|
-
VERSION = '2.
|
13
|
+
VERSION = '2.9.0',
|
14
14
|
// the global-scope this is NOT the global object in Node.js
|
15
|
-
globalScope = typeof global !== 'undefined' ? global : this,
|
15
|
+
globalScope = (typeof global !== 'undefined' && (typeof window === 'undefined' || window === global.window)) ? global : this,
|
16
16
|
oldGlobalMoment,
|
17
17
|
round = Math.round,
|
18
18
|
hasOwnProperty = Object.prototype.hasOwnProperty,
|
@@ -89,7 +89,7 @@
|
|
89
89
|
['HH', /(T| )\d\d/]
|
90
90
|
],
|
91
91
|
|
92
|
-
// timezone chunker '+10:00' > ['10', '00'] or '-1530' > ['-15', '30']
|
92
|
+
// timezone chunker '+10:00' > ['10', '00'] or '-1530' > ['-', '15', '30']
|
93
93
|
parseTimezoneChunker = /([\+\-]|\d\d)/gi,
|
94
94
|
|
95
95
|
// getter and setter names
|
@@ -249,7 +249,7 @@
|
|
249
249
|
return leftZeroFill(this.milliseconds(), 3);
|
250
250
|
},
|
251
251
|
Z : function () {
|
252
|
-
var a =
|
252
|
+
var a = this.utcOffset(),
|
253
253
|
b = '+';
|
254
254
|
if (a < 0) {
|
255
255
|
a = -a;
|
@@ -258,7 +258,7 @@
|
|
258
258
|
return b + leftZeroFill(toInt(a / 60), 2) + ':' + leftZeroFill(toInt(a) % 60, 2);
|
259
259
|
},
|
260
260
|
ZZ : function () {
|
261
|
-
var a =
|
261
|
+
var a = this.utcOffset(),
|
262
262
|
b = '+';
|
263
263
|
if (a < 0) {
|
264
264
|
a = -a;
|
@@ -285,7 +285,9 @@
|
|
285
285
|
|
286
286
|
deprecations = {},
|
287
287
|
|
288
|
-
lists = ['months', 'monthsShort', 'weekdays', 'weekdaysShort', 'weekdaysMin']
|
288
|
+
lists = ['months', 'monthsShort', 'weekdays', 'weekdaysShort', 'weekdaysMin'],
|
289
|
+
|
290
|
+
updateInProgress = false;
|
289
291
|
|
290
292
|
// Pick the first defined of two or three arguments. dfl comes from
|
291
293
|
// default.
|
@@ -354,6 +356,26 @@
|
|
354
356
|
};
|
355
357
|
}
|
356
358
|
|
359
|
+
function monthDiff(a, b) {
|
360
|
+
// difference in months
|
361
|
+
var wholeMonthDiff = ((b.year() - a.year()) * 12) + (b.month() - a.month()),
|
362
|
+
// b is in (anchor - 1 month, anchor + 1 month)
|
363
|
+
anchor = a.clone().add(wholeMonthDiff, 'months'),
|
364
|
+
anchor2, adjust;
|
365
|
+
|
366
|
+
if (b - anchor < 0) {
|
367
|
+
anchor2 = a.clone().add(wholeMonthDiff - 1, 'months');
|
368
|
+
// linear across the month
|
369
|
+
adjust = (b - anchor) / (anchor - anchor2);
|
370
|
+
} else {
|
371
|
+
anchor2 = a.clone().add(wholeMonthDiff + 1, 'months');
|
372
|
+
// linear across the month
|
373
|
+
adjust = (b - anchor) / (anchor2 - anchor);
|
374
|
+
}
|
375
|
+
|
376
|
+
return -(wholeMonthDiff + adjust);
|
377
|
+
}
|
378
|
+
|
357
379
|
while (ordinalizeTokens.length) {
|
358
380
|
i = ordinalizeTokens.pop();
|
359
381
|
formatTokenFunctions[i + 'o'] = ordinalizeToken(formatTokenFunctions[i], i);
|
@@ -365,6 +387,31 @@
|
|
365
387
|
formatTokenFunctions.DDDD = padToken(formatTokenFunctions.DDD, 3);
|
366
388
|
|
367
389
|
|
390
|
+
function meridiemFixWrap(locale, hour, meridiem) {
|
391
|
+
var isPm;
|
392
|
+
|
393
|
+
if (meridiem == null) {
|
394
|
+
// nothing to do
|
395
|
+
return hour;
|
396
|
+
}
|
397
|
+
if (locale.meridiemHour != null) {
|
398
|
+
return locale.meridiemHour(hour, meridiem);
|
399
|
+
} else if (locale.isPM != null) {
|
400
|
+
// Fallback
|
401
|
+
isPm = locale.isPM(meridiem);
|
402
|
+
if (isPm && hour < 12) {
|
403
|
+
hour += 12;
|
404
|
+
}
|
405
|
+
if (!isPm && hour === 12) {
|
406
|
+
hour = 0;
|
407
|
+
}
|
408
|
+
return hour;
|
409
|
+
} else {
|
410
|
+
// thie is not supposed to happen
|
411
|
+
return hour;
|
412
|
+
}
|
413
|
+
}
|
414
|
+
|
368
415
|
/************************************
|
369
416
|
Constructors
|
370
417
|
************************************/
|
@@ -379,6 +426,13 @@
|
|
379
426
|
}
|
380
427
|
copyConfig(this, config);
|
381
428
|
this._d = new Date(+config._d);
|
429
|
+
// Prevent infinite loop in case updateOffset creates new moment
|
430
|
+
// objects.
|
431
|
+
if (updateInProgress === false) {
|
432
|
+
updateInProgress = true;
|
433
|
+
moment.updateOffset(this);
|
434
|
+
updateInProgress = false;
|
435
|
+
}
|
382
436
|
}
|
383
437
|
|
384
438
|
// Duration Constructor
|
@@ -782,7 +836,8 @@
|
|
782
836
|
return locales[name];
|
783
837
|
}
|
784
838
|
|
785
|
-
// Return a moment from input, that is local/utc/
|
839
|
+
// Return a moment from input, that is local/utc/utcOffset equivalent to
|
840
|
+
// model.
|
786
841
|
function makeAs(input, model) {
|
787
842
|
var res, diff;
|
788
843
|
if (model._isUTC) {
|
@@ -931,6 +986,7 @@
|
|
931
986
|
}
|
932
987
|
},
|
933
988
|
|
989
|
+
|
934
990
|
_calendar : {
|
935
991
|
sameDay : '[Today at] LT',
|
936
992
|
nextDay : '[Tomorrow at] LT',
|
@@ -995,6 +1051,14 @@
|
|
995
1051
|
doy : 6 // The week that contains Jan 1st is the first week of the year.
|
996
1052
|
},
|
997
1053
|
|
1054
|
+
firstDayOfWeek : function () {
|
1055
|
+
return this._week.dow;
|
1056
|
+
},
|
1057
|
+
|
1058
|
+
firstDayOfYear : function () {
|
1059
|
+
return this._week.doy;
|
1060
|
+
},
|
1061
|
+
|
998
1062
|
_invalidDate: 'Invalid date',
|
999
1063
|
invalidDate: function () {
|
1000
1064
|
return this._invalidDate;
|
@@ -1161,14 +1225,14 @@
|
|
1161
1225
|
}
|
1162
1226
|
}
|
1163
1227
|
|
1164
|
-
function
|
1228
|
+
function utcOffsetFromString(string) {
|
1165
1229
|
string = string || '';
|
1166
1230
|
var possibleTzMatches = (string.match(parseTokenTimezone) || []),
|
1167
1231
|
tzChunk = possibleTzMatches[possibleTzMatches.length - 1] || [],
|
1168
1232
|
parts = (tzChunk + '').match(parseTimezoneChunker) || ['-', 0, 0],
|
1169
1233
|
minutes = +(parts[1] * 60) + toInt(parts[2]);
|
1170
1234
|
|
1171
|
-
return parts[0] === '+' ?
|
1235
|
+
return parts[0] === '+' ? minutes : -minutes;
|
1172
1236
|
}
|
1173
1237
|
|
1174
1238
|
// function to convert string input to date
|
@@ -1232,7 +1296,8 @@
|
|
1232
1296
|
// AM / PM
|
1233
1297
|
case 'a' : // fall through to A
|
1234
1298
|
case 'A' :
|
1235
|
-
config.
|
1299
|
+
config._meridiem = input;
|
1300
|
+
// config._isPm = config._locale.isPM(input);
|
1236
1301
|
break;
|
1237
1302
|
// HOUR
|
1238
1303
|
case 'h' : // fall through to hh
|
@@ -1272,7 +1337,7 @@
|
|
1272
1337
|
case 'Z' : // fall through to ZZ
|
1273
1338
|
case 'ZZ' :
|
1274
1339
|
config._useUTC = true;
|
1275
|
-
config._tzm =
|
1340
|
+
config._tzm = utcOffsetFromString(input);
|
1276
1341
|
break;
|
1277
1342
|
// WEEKDAY - human
|
1278
1343
|
case 'dd':
|
@@ -1410,10 +1475,10 @@
|
|
1410
1475
|
}
|
1411
1476
|
|
1412
1477
|
config._d = (config._useUTC ? makeUTCDate : makeDate).apply(null, input);
|
1413
|
-
// Apply timezone offset from input. The actual
|
1478
|
+
// Apply timezone offset from input. The actual utcOffset can be changed
|
1414
1479
|
// with parseZone.
|
1415
1480
|
if (config._tzm != null) {
|
1416
|
-
config._d.setUTCMinutes(config._d.getUTCMinutes()
|
1481
|
+
config._d.setUTCMinutes(config._d.getUTCMinutes() - config._tzm);
|
1417
1482
|
}
|
1418
1483
|
|
1419
1484
|
if (config._nextDay) {
|
@@ -1509,14 +1574,9 @@
|
|
1509
1574
|
if (config._pf.bigHour === true && config._a[HOUR] <= 12) {
|
1510
1575
|
config._pf.bigHour = undefined;
|
1511
1576
|
}
|
1512
|
-
// handle
|
1513
|
-
|
1514
|
-
|
1515
|
-
}
|
1516
|
-
// if is 12 am, change hours to 0
|
1517
|
-
if (config._isPm === false && config._a[HOUR] === 12) {
|
1518
|
-
config._a[HOUR] = 0;
|
1519
|
-
}
|
1577
|
+
// handle meridiem
|
1578
|
+
config._a[HOUR] = meridiemFixWrap(config._locale, config._a[HOUR],
|
1579
|
+
config._meridiem);
|
1520
1580
|
dateFromConfig(config);
|
1521
1581
|
checkOverflow(config);
|
1522
1582
|
}
|
@@ -1958,6 +2018,8 @@
|
|
1958
2018
|
s: parseIso(match[7]),
|
1959
2019
|
w: parseIso(match[8])
|
1960
2020
|
};
|
2021
|
+
} else if (duration == null) {// checks for null or undefined
|
2022
|
+
duration = {};
|
1961
2023
|
} else if (typeof duration === 'object' &&
|
1962
2024
|
('from' in duration || 'to' in duration)) {
|
1963
2025
|
diffRes = momentsDifference(moment(duration.from), moment(duration.to));
|
@@ -2122,6 +2184,8 @@
|
|
2122
2184
|
return toInt(input) + (toInt(input) > 68 ? 1900 : 2000);
|
2123
2185
|
};
|
2124
2186
|
|
2187
|
+
moment.isDate = isDate;
|
2188
|
+
|
2125
2189
|
/************************************
|
2126
2190
|
Moment Prototype
|
2127
2191
|
************************************/
|
@@ -2134,7 +2198,7 @@
|
|
2134
2198
|
},
|
2135
2199
|
|
2136
2200
|
valueOf : function () {
|
2137
|
-
return +this._d
|
2201
|
+
return +this._d - ((this._offset || 0) * 60000);
|
2138
2202
|
},
|
2139
2203
|
|
2140
2204
|
unix : function () {
|
@@ -2197,16 +2261,16 @@
|
|
2197
2261
|
},
|
2198
2262
|
|
2199
2263
|
utc : function (keepLocalTime) {
|
2200
|
-
return this.
|
2264
|
+
return this.utcOffset(0, keepLocalTime);
|
2201
2265
|
},
|
2202
2266
|
|
2203
2267
|
local : function (keepLocalTime) {
|
2204
2268
|
if (this._isUTC) {
|
2205
|
-
this.
|
2269
|
+
this.utcOffset(0, keepLocalTime);
|
2206
2270
|
this._isUTC = false;
|
2207
2271
|
|
2208
2272
|
if (keepLocalTime) {
|
2209
|
-
this.
|
2273
|
+
this.subtract(this._dateUtcOffset(), 'm');
|
2210
2274
|
}
|
2211
2275
|
}
|
2212
2276
|
return this;
|
@@ -2223,29 +2287,20 @@
|
|
2223
2287
|
|
2224
2288
|
diff : function (input, units, asFloat) {
|
2225
2289
|
var that = makeAs(input, this),
|
2226
|
-
zoneDiff = (
|
2227
|
-
diff, output, daysAdjust;
|
2290
|
+
zoneDiff = (that.utcOffset() - this.utcOffset()) * 6e4,
|
2291
|
+
anchor, diff, output, daysAdjust;
|
2228
2292
|
|
2229
2293
|
units = normalizeUnits(units);
|
2230
2294
|
|
2231
|
-
if (units === 'year' || units === 'month') {
|
2232
|
-
|
2233
|
-
|
2234
|
-
|
2235
|
-
|
2236
|
-
// adjust by taking difference in days, average number of days
|
2237
|
-
// and dst in the given months.
|
2238
|
-
daysAdjust = (this - moment(this).startOf('month')) -
|
2239
|
-
(that - moment(that).startOf('month'));
|
2240
|
-
// same as above but with zones, to negate all dst
|
2241
|
-
daysAdjust -= ((this.zone() - moment(this).startOf('month').zone()) -
|
2242
|
-
(that.zone() - moment(that).startOf('month').zone())) * 6e4;
|
2243
|
-
output += daysAdjust / diff;
|
2244
|
-
if (units === 'year') {
|
2295
|
+
if (units === 'year' || units === 'month' || units === 'quarter') {
|
2296
|
+
output = monthDiff(this, that);
|
2297
|
+
if (units === 'quarter') {
|
2298
|
+
output = output / 3;
|
2299
|
+
} else if (units === 'year') {
|
2245
2300
|
output = output / 12;
|
2246
2301
|
}
|
2247
2302
|
} else {
|
2248
|
-
diff =
|
2303
|
+
diff = this - that;
|
2249
2304
|
output = units === 'second' ? diff / 1e3 : // 1000
|
2250
2305
|
units === 'minute' ? diff / 6e4 : // 1000 * 60
|
2251
2306
|
units === 'hour' ? diff / 36e5 : // 1000 * 60 * 60
|
@@ -2266,7 +2321,8 @@
|
|
2266
2321
|
|
2267
2322
|
calendar : function (time) {
|
2268
2323
|
// We want to compare the start of today, vs this.
|
2269
|
-
// Getting start-of-today depends on whether we're
|
2324
|
+
// Getting start-of-today depends on whether we're locat/utc/offset
|
2325
|
+
// or not.
|
2270
2326
|
var now = time || moment(),
|
2271
2327
|
sod = makeAs(now, this).startOf('day'),
|
2272
2328
|
diff = this.diff(sod, 'days', true),
|
@@ -2284,8 +2340,8 @@
|
|
2284
2340
|
},
|
2285
2341
|
|
2286
2342
|
isDST : function () {
|
2287
|
-
return (this.
|
2288
|
-
this.
|
2343
|
+
return (this.utcOffset() > this.clone().month(0).utcOffset() ||
|
2344
|
+
this.utcOffset() > this.clone().month(5).utcOffset());
|
2289
2345
|
},
|
2290
2346
|
|
2291
2347
|
day : function (input) {
|
@@ -2375,6 +2431,10 @@
|
|
2375
2431
|
}
|
2376
2432
|
},
|
2377
2433
|
|
2434
|
+
isBetween: function (from, to, units) {
|
2435
|
+
return this.isAfter(from, units) && this.isBefore(to, units);
|
2436
|
+
},
|
2437
|
+
|
2378
2438
|
isSame: function (input, units) {
|
2379
2439
|
var inputMs;
|
2380
2440
|
units = normalizeUnits(units || 'millisecond');
|
@@ -2403,9 +2463,27 @@
|
|
2403
2463
|
}
|
2404
2464
|
),
|
2405
2465
|
|
2466
|
+
zone : deprecate(
|
2467
|
+
'moment().zone is deprecated, use moment().utcOffset instead. ' +
|
2468
|
+
'https://github.com/moment/moment/issues/1779',
|
2469
|
+
function (input, keepLocalTime) {
|
2470
|
+
if (input != null) {
|
2471
|
+
if (typeof input !== 'string') {
|
2472
|
+
input = -input;
|
2473
|
+
}
|
2474
|
+
|
2475
|
+
this.utcOffset(input, keepLocalTime);
|
2476
|
+
|
2477
|
+
return this;
|
2478
|
+
} else {
|
2479
|
+
return -this.utcOffset();
|
2480
|
+
}
|
2481
|
+
}
|
2482
|
+
),
|
2483
|
+
|
2406
2484
|
// keepLocalTime = true means only change the timezone, without
|
2407
|
-
// affecting the local hour. So 5:31:26 +0300 --[
|
2408
|
-
// 5:31:26 +0200 It is possible that 5:31:26 doesn't exist
|
2485
|
+
// affecting the local hour. So 5:31:26 +0300 --[utcOffset(2, true)]-->
|
2486
|
+
// 5:31:26 +0200 It is possible that 5:31:26 doesn't exist with offset
|
2409
2487
|
// +0200, so we adjust the time as needed, to be valid.
|
2410
2488
|
//
|
2411
2489
|
// Keeping the time actually adds/subtracts (one hour)
|
@@ -2413,38 +2491,51 @@
|
|
2413
2491
|
// a second time. In case it wants us to change the offset again
|
2414
2492
|
// _changeInProgress == true case, then we have to adjust, because
|
2415
2493
|
// there is no such time in the given timezone.
|
2416
|
-
|
2494
|
+
utcOffset : function (input, keepLocalTime) {
|
2417
2495
|
var offset = this._offset || 0,
|
2418
2496
|
localAdjust;
|
2419
2497
|
if (input != null) {
|
2420
2498
|
if (typeof input === 'string') {
|
2421
|
-
input =
|
2499
|
+
input = utcOffsetFromString(input);
|
2422
2500
|
}
|
2423
2501
|
if (Math.abs(input) < 16) {
|
2424
2502
|
input = input * 60;
|
2425
2503
|
}
|
2426
2504
|
if (!this._isUTC && keepLocalTime) {
|
2427
|
-
localAdjust = this.
|
2505
|
+
localAdjust = this._dateUtcOffset();
|
2428
2506
|
}
|
2429
2507
|
this._offset = input;
|
2430
2508
|
this._isUTC = true;
|
2431
2509
|
if (localAdjust != null) {
|
2432
|
-
this.
|
2510
|
+
this.add(localAdjust, 'm');
|
2433
2511
|
}
|
2434
2512
|
if (offset !== input) {
|
2435
2513
|
if (!keepLocalTime || this._changeInProgress) {
|
2436
2514
|
addOrSubtractDurationFromMoment(this,
|
2437
|
-
moment.duration(
|
2515
|
+
moment.duration(input - offset, 'm'), 1, false);
|
2438
2516
|
} else if (!this._changeInProgress) {
|
2439
2517
|
this._changeInProgress = true;
|
2440
2518
|
moment.updateOffset(this, true);
|
2441
2519
|
this._changeInProgress = null;
|
2442
2520
|
}
|
2443
2521
|
}
|
2522
|
+
|
2523
|
+
return this;
|
2444
2524
|
} else {
|
2445
|
-
return this._isUTC ? offset : this.
|
2525
|
+
return this._isUTC ? offset : this._dateUtcOffset();
|
2446
2526
|
}
|
2447
|
-
|
2527
|
+
},
|
2528
|
+
|
2529
|
+
isLocal : function () {
|
2530
|
+
return !this._isUTC;
|
2531
|
+
},
|
2532
|
+
|
2533
|
+
isUtcOffset : function () {
|
2534
|
+
return this._isUTC;
|
2535
|
+
},
|
2536
|
+
|
2537
|
+
isUtc : function () {
|
2538
|
+
return this._isUTC && this._offset === 0;
|
2448
2539
|
},
|
2449
2540
|
|
2450
2541
|
zoneAbbr : function () {
|
@@ -2457,9 +2548,9 @@
|
|
2457
2548
|
|
2458
2549
|
parseZone : function () {
|
2459
2550
|
if (this._tzm) {
|
2460
|
-
this.
|
2551
|
+
this.utcOffset(this._tzm);
|
2461
2552
|
} else if (typeof this._i === 'string') {
|
2462
|
-
this.
|
2553
|
+
this.utcOffset(utcOffsetFromString(this._i));
|
2463
2554
|
}
|
2464
2555
|
return this;
|
2465
2556
|
},
|
@@ -2469,10 +2560,10 @@
|
|
2469
2560
|
input = 0;
|
2470
2561
|
}
|
2471
2562
|
else {
|
2472
|
-
input = moment(input).
|
2563
|
+
input = moment(input).utcOffset();
|
2473
2564
|
}
|
2474
2565
|
|
2475
|
-
return (this.
|
2566
|
+
return (this.utcOffset() - input) % 60 === 0;
|
2476
2567
|
},
|
2477
2568
|
|
2478
2569
|
daysInMonth : function () {
|
@@ -2535,9 +2626,17 @@
|
|
2535
2626
|
},
|
2536
2627
|
|
2537
2628
|
set : function (units, value) {
|
2538
|
-
|
2539
|
-
if (typeof
|
2540
|
-
|
2629
|
+
var unit;
|
2630
|
+
if (typeof units === 'object') {
|
2631
|
+
for (unit in units) {
|
2632
|
+
this.set(unit, units[unit]);
|
2633
|
+
}
|
2634
|
+
}
|
2635
|
+
else {
|
2636
|
+
units = normalizeUnits(units);
|
2637
|
+
if (typeof this[units] === 'function') {
|
2638
|
+
this[units](value);
|
2639
|
+
}
|
2541
2640
|
}
|
2542
2641
|
return this;
|
2543
2642
|
},
|
@@ -2574,11 +2673,12 @@
|
|
2574
2673
|
return this._locale;
|
2575
2674
|
},
|
2576
2675
|
|
2577
|
-
|
2676
|
+
_dateUtcOffset : function () {
|
2578
2677
|
// On Firefox.24 Date#getTimezoneOffset returns a floating point.
|
2579
2678
|
// https://github.com/moment/moment/pull/1871
|
2580
|
-
return Math.round(this._d.getTimezoneOffset() / 15) * 15;
|
2679
|
+
return -Math.round(this._d.getTimezoneOffset() / 15) * 15;
|
2581
2680
|
}
|
2681
|
+
|
2582
2682
|
});
|
2583
2683
|
|
2584
2684
|
function rawMonthSetter(mom, value) {
|
@@ -2647,6 +2747,9 @@
|
|
2647
2747
|
// add aliased format methods
|
2648
2748
|
moment.fn.toJSON = moment.fn.toISOString;
|
2649
2749
|
|
2750
|
+
// alias isUtc for dev-friendliness
|
2751
|
+
moment.fn.isUTC = moment.fn.isUtc;
|
2752
|
+
|
2650
2753
|
/************************************
|
2651
2754
|
Duration Prototype
|
2652
2755
|
************************************/
|
@@ -2834,6 +2937,10 @@
|
|
2834
2937
|
|
2835
2938
|
localeData : function () {
|
2836
2939
|
return this._locale;
|
2940
|
+
},
|
2941
|
+
|
2942
|
+
toJSON : function () {
|
2943
|
+
return this.toISOString();
|
2837
2944
|
}
|
2838
2945
|
});
|
2839
2946
|
|
@@ -2921,7 +3028,7 @@
|
|
2921
3028
|
if (hasModule) {
|
2922
3029
|
module.exports = moment;
|
2923
3030
|
} else if (typeof define === 'function' && define.amd) {
|
2924
|
-
define(
|
3031
|
+
define(function (require, exports, module) {
|
2925
3032
|
if (module.config && module.config() && module.config().noGlobal === true) {
|
2926
3033
|
// release the global variable
|
2927
3034
|
globalScope.moment = oldGlobalMoment;
|
@@ -17,6 +17,10 @@
|
|
17
17
|
weekdays : 'Sondag_Maandag_Dinsdag_Woensdag_Donderdag_Vrydag_Saterdag'.split('_'),
|
18
18
|
weekdaysShort : 'Son_Maa_Din_Woe_Don_Vry_Sat'.split('_'),
|
19
19
|
weekdaysMin : 'So_Ma_Di_Wo_Do_Vr_Sa'.split('_'),
|
20
|
+
meridiemParse: /vm|nm/i,
|
21
|
+
isPM : function (input) {
|
22
|
+
return /^nm$/i.test(input);
|
23
|
+
},
|
20
24
|
meridiem : function (hours, minutes, isLower) {
|
21
25
|
if (hours < 12) {
|
22
26
|
return isLower ? 'vm' : 'VM';
|
@@ -0,0 +1,55 @@
|
|
1
|
+
// moment.js locale configuration
|
2
|
+
// locale : Tunisian Arabic (ar-tn)
|
3
|
+
|
4
|
+
(function (factory) {
|
5
|
+
if (typeof define === 'function' && define.amd) {
|
6
|
+
define(['moment'], factory); // AMD
|
7
|
+
} else if (typeof exports === 'object') {
|
8
|
+
module.exports = factory(require('../moment')); // Node
|
9
|
+
} else {
|
10
|
+
factory((typeof global !== 'undefined' ? global : this).moment); // node or other global
|
11
|
+
}
|
12
|
+
}(function (moment) {
|
13
|
+
return moment.defineLocale('ar-tn', {
|
14
|
+
months: 'جانفي_فيفري_مارس_أفريل_ماي_جوان_جويلية_أوت_سبتمبر_أكتوبر_نوفمبر_ديسمبر'.split('_'),
|
15
|
+
monthsShort: 'جانفي_فيفري_مارس_أفريل_ماي_جوان_جويلية_أوت_سبتمبر_أكتوبر_نوفمبر_ديسمبر'.split('_'),
|
16
|
+
weekdays: 'الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت'.split('_'),
|
17
|
+
weekdaysShort: 'أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت'.split('_'),
|
18
|
+
weekdaysMin: 'ح_ن_ث_ر_خ_ج_س'.split('_'),
|
19
|
+
longDateFormat: {
|
20
|
+
LT: 'HH:mm',
|
21
|
+
LTS: 'LT:ss',
|
22
|
+
L: 'DD/MM/YYYY',
|
23
|
+
LL: 'D MMMM YYYY',
|
24
|
+
LLL: 'D MMMM YYYY LT',
|
25
|
+
LLLL: 'dddd D MMMM YYYY LT'
|
26
|
+
},
|
27
|
+
calendar: {
|
28
|
+
sameDay: '[اليوم على الساعة] LT',
|
29
|
+
nextDay: '[غدا على الساعة] LT',
|
30
|
+
nextWeek: 'dddd [على الساعة] LT',
|
31
|
+
lastDay: '[أمس على الساعة] LT',
|
32
|
+
lastWeek: 'dddd [على الساعة] LT',
|
33
|
+
sameElse: 'L'
|
34
|
+
},
|
35
|
+
relativeTime: {
|
36
|
+
future: 'في %s',
|
37
|
+
past: 'منذ %s',
|
38
|
+
s: 'ثوان',
|
39
|
+
m: 'دقيقة',
|
40
|
+
mm: '%d دقائق',
|
41
|
+
h: 'ساعة',
|
42
|
+
hh: '%d ساعات',
|
43
|
+
d: 'يوم',
|
44
|
+
dd: '%d أيام',
|
45
|
+
M: 'شهر',
|
46
|
+
MM: '%d أشهر',
|
47
|
+
y: 'سنة',
|
48
|
+
yy: '%d سنوات'
|
49
|
+
},
|
50
|
+
week: {
|
51
|
+
dow: 1, // Monday is the first day of the week.
|
52
|
+
doy: 4 // The week that contains Jan 4th is the first week of the year.
|
53
|
+
}
|
54
|
+
});
|
55
|
+
}));
|
@@ -114,8 +114,10 @@
|
|
114
114
|
y : 'год',
|
115
115
|
yy : relativeTimeWithPlural
|
116
116
|
},
|
117
|
-
|
118
|
-
|
117
|
+
meridiemParse: /ночы|раніцы|дня|вечара/,
|
118
|
+
isPM : function (input) {
|
119
|
+
return /^(дня|вечара)$/.test(input);
|
120
|
+
},
|
119
121
|
meridiem : function (hour, minute, isLower) {
|
120
122
|
if (hour < 4) {
|
121
123
|
return 'ночы';
|
@@ -83,6 +83,10 @@
|
|
83
83
|
return symbolMap[match];
|
84
84
|
});
|
85
85
|
},
|
86
|
+
meridiemParse: /রাত|শকাল|দুপুর|বিকেল|রাত/,
|
87
|
+
isPM: function (input) {
|
88
|
+
return /^(দুপুর|বিকেল|রাত)$/.test(input);
|
89
|
+
},
|
86
90
|
//Bengali is a vast language its spoken
|
87
91
|
//in different forms in various parts of the world.
|
88
92
|
//I have just generalized with most common one used
|
@@ -83,6 +83,10 @@
|
|
83
83
|
return symbolMap[match];
|
84
84
|
});
|
85
85
|
},
|
86
|
+
meridiemParse: /མཚན་མོ|ཞོགས་ཀས|ཉིན་གུང|དགོང་དག|མཚན་མོ/,
|
87
|
+
isPM: function (input) {
|
88
|
+
return /^(ཉིན་གུང|དགོང་དག|མཚན་མོ)$/.test(input);
|
89
|
+
},
|
86
90
|
meridiem : function (hour, minute, isLower) {
|
87
91
|
if (hour < 4) {
|
88
92
|
return 'མཚན་མོ';
|
@@ -27,6 +27,10 @@
|
|
27
27
|
LLL : 'D[-an de] MMMM, YYYY LT',
|
28
28
|
LLLL : 'dddd, [la] D[-an de] MMMM, YYYY LT'
|
29
29
|
},
|
30
|
+
meridiemParse: /[ap]\.t\.m/i,
|
31
|
+
isPM: function (input) {
|
32
|
+
return input.charAt(0).toLowerCase() === 'p';
|
33
|
+
},
|
30
34
|
meridiem : function (hours, minutes, isLower) {
|
31
35
|
if (hours > 11) {
|
32
36
|
return isLower ? 'p.t.m.' : 'P.T.M.';
|
@@ -49,6 +49,10 @@
|
|
49
49
|
LLL : 'D MMMM YYYY LT',
|
50
50
|
LLLL : 'dddd, D MMMM YYYY LT'
|
51
51
|
},
|
52
|
+
meridiemParse: /قبل از ظهر|بعد از ظهر/,
|
53
|
+
isPM: function (input) {
|
54
|
+
return /بعد از ظهر/.test(input);
|
55
|
+
},
|
52
56
|
meridiem : function (hour, minute, isLower) {
|
53
57
|
if (hour < 12) {
|
54
58
|
return 'قبل از ظهر';
|
@@ -0,0 +1,69 @@
|
|
1
|
+
// moment.js locale configuration
|
2
|
+
// locale : frisian (fy)
|
3
|
+
// author : Robin van der Vliet : https://github.com/robin0van0der0v
|
4
|
+
|
5
|
+
(function (factory) {
|
6
|
+
if (typeof define === 'function' && define.amd) {
|
7
|
+
define(['moment'], factory); // AMD
|
8
|
+
} else if (typeof exports === 'object') {
|
9
|
+
module.exports = factory(require('../moment')); // Node
|
10
|
+
} else {
|
11
|
+
factory((typeof global !== 'undefined' ? global : this).moment); // node or other global
|
12
|
+
}
|
13
|
+
}(function (moment) {
|
14
|
+
var monthsShortWithDots = 'jan._feb._mrt._apr._mai_jun._jul._aug._sep._okt._nov._des.'.split('_'),
|
15
|
+
monthsShortWithoutDots = 'jan_feb_mrt_apr_mai_jun_jul_aug_sep_okt_nov_des'.split('_');
|
16
|
+
|
17
|
+
return moment.defineLocale('fy', {
|
18
|
+
months : 'jannewaris_febrewaris_maart_april_maaie_juny_july_augustus_septimber_oktober_novimber_desimber'.split('_'),
|
19
|
+
monthsShort : function (m, format) {
|
20
|
+
if (/-MMM-/.test(format)) {
|
21
|
+
return monthsShortWithoutDots[m.month()];
|
22
|
+
} else {
|
23
|
+
return monthsShortWithDots[m.month()];
|
24
|
+
}
|
25
|
+
},
|
26
|
+
weekdays : 'snein_moandei_tiisdei_woansdei_tongersdei_freed_sneon'.split('_'),
|
27
|
+
weekdaysShort : 'si._mo._ti._wo._to._fr._so.'.split('_'),
|
28
|
+
weekdaysMin : 'Si_Mo_Ti_Wo_To_Fr_So'.split('_'),
|
29
|
+
longDateFormat : {
|
30
|
+
LT : 'HH:mm',
|
31
|
+
LTS : 'LT:ss',
|
32
|
+
L : 'DD-MM-YYYY',
|
33
|
+
LL : 'D MMMM YYYY',
|
34
|
+
LLL : 'D MMMM YYYY LT',
|
35
|
+
LLLL : 'dddd D MMMM YYYY LT'
|
36
|
+
},
|
37
|
+
calendar : {
|
38
|
+
sameDay: '[hjoed om] LT',
|
39
|
+
nextDay: '[moarn om] LT',
|
40
|
+
nextWeek: 'dddd [om] LT',
|
41
|
+
lastDay: '[juster om] LT',
|
42
|
+
lastWeek: '[ôfrûne] dddd [om] LT',
|
43
|
+
sameElse: 'L'
|
44
|
+
},
|
45
|
+
relativeTime : {
|
46
|
+
future : 'oer %s',
|
47
|
+
past : '%s lyn',
|
48
|
+
s : 'in pear sekonden',
|
49
|
+
m : 'ien minút',
|
50
|
+
mm : '%d minuten',
|
51
|
+
h : 'ien oere',
|
52
|
+
hh : '%d oeren',
|
53
|
+
d : 'ien dei',
|
54
|
+
dd : '%d dagen',
|
55
|
+
M : 'ien moanne',
|
56
|
+
MM : '%d moannen',
|
57
|
+
y : 'ien jier',
|
58
|
+
yy : '%d jierren'
|
59
|
+
},
|
60
|
+
ordinalParse: /\d{1,2}(ste|de)/,
|
61
|
+
ordinal : function (number) {
|
62
|
+
return number + ((number === 1 || number === 8 || number >= 20) ? 'ste' : 'de');
|
63
|
+
},
|
64
|
+
week : {
|
65
|
+
dow : 1, // Monday is the first day of the week.
|
66
|
+
doy : 4 // The week that contains Jan 4th is the first week of the year.
|
67
|
+
}
|
68
|
+
});
|
69
|
+
}));
|
@@ -85,6 +85,21 @@
|
|
85
85
|
},
|
86
86
|
// Hindi notation for meridiems are quite fuzzy in practice. While there exists
|
87
87
|
// a rigid notion of a 'Pahar' it is not used as rigidly in modern Hindi.
|
88
|
+
meridiemParse: /रात|सुबह|दोपहर|शाम/,
|
89
|
+
meridiemHour : function (hour, meridiem) {
|
90
|
+
if (hour === 12) {
|
91
|
+
hour = 0;
|
92
|
+
}
|
93
|
+
if (meridiem === 'रात') {
|
94
|
+
return hour < 4 ? hour : hour + 12;
|
95
|
+
} else if (meridiem === 'सुबह') {
|
96
|
+
return hour;
|
97
|
+
} else if (meridiem === 'दोपहर') {
|
98
|
+
return hour >= 10 ? hour : hour + 12;
|
99
|
+
} else if (meridiem === 'शाम') {
|
100
|
+
return hour + 12;
|
101
|
+
}
|
102
|
+
},
|
88
103
|
meridiem : function (hour, minute, isLower) {
|
89
104
|
if (hour < 4) {
|
90
105
|
return 'रात';
|
@@ -63,6 +63,10 @@
|
|
63
63
|
LLL : 'YYYY. MMMM D., LT',
|
64
64
|
LLLL : 'YYYY. MMMM D., dddd LT'
|
65
65
|
},
|
66
|
+
meridiemParse: /de|du/i,
|
67
|
+
isPM: function (input) {
|
68
|
+
return input.charAt(1).toLowerCase() === 'u';
|
69
|
+
},
|
66
70
|
meridiem : function (hours, minutes, isLower) {
|
67
71
|
if (hours < 12) {
|
68
72
|
return isLower === true ? 'de' : 'DE';
|
@@ -26,6 +26,19 @@
|
|
26
26
|
LLL : 'D MMMM YYYY [pukul] LT',
|
27
27
|
LLLL : 'dddd, D MMMM YYYY [pukul] LT'
|
28
28
|
},
|
29
|
+
meridiemParse: /pagi|siang|sore|malam/,
|
30
|
+
meridiemHour : function (hour, meridiem) {
|
31
|
+
if (hour === 12) {
|
32
|
+
hour = 0;
|
33
|
+
}
|
34
|
+
if (meridiem === 'pagi') {
|
35
|
+
return hour;
|
36
|
+
} else if (meridiem === 'siang') {
|
37
|
+
return hour >= 11 ? hour : hour + 12;
|
38
|
+
} else if (meridiem === 'sore' || meridiem === 'malam') {
|
39
|
+
return hour + 12;
|
40
|
+
}
|
41
|
+
},
|
29
42
|
meridiem : function (hours, minutes, isLower) {
|
30
43
|
if (hours < 11) {
|
31
44
|
return 'pagi';
|
@@ -28,9 +28,6 @@
|
|
28
28
|
LLL : 'YYYY년 MMMM D일 LT',
|
29
29
|
LLLL : 'YYYY년 MMMM D일 dddd LT'
|
30
30
|
},
|
31
|
-
meridiem : function (hour, minute, isUpper) {
|
32
|
-
return hour < 12 ? '오전' : '오후';
|
33
|
-
},
|
34
31
|
calendar : {
|
35
32
|
sameDay : '오늘 LT',
|
36
33
|
nextDay : '내일 LT',
|
@@ -57,9 +54,12 @@
|
|
57
54
|
},
|
58
55
|
ordinalParse : /\d{1,2}일/,
|
59
56
|
ordinal : '%d일',
|
60
|
-
meridiemParse :
|
57
|
+
meridiemParse : /오전|오후/,
|
61
58
|
isPM : function (token) {
|
62
59
|
return token === '오후';
|
60
|
+
},
|
61
|
+
meridiem : function (hour, minute, isUpper) {
|
62
|
+
return hour < 12 ? '오전' : '오후';
|
63
63
|
}
|
64
64
|
});
|
65
65
|
}));
|
@@ -48,6 +48,10 @@
|
|
48
48
|
y : 'ഒരു വർഷം',
|
49
49
|
yy : '%d വർഷം'
|
50
50
|
},
|
51
|
+
meridiemParse: /രാത്രി|രാവിലെ|ഉച്ച കഴിഞ്ഞ്|വൈകുന്നേരം|രാത്രി/i,
|
52
|
+
isPM : function (input) {
|
53
|
+
return /^(ഉച്ച കഴിഞ്ഞ്|വൈകുന്നേരം|രാത്രി)$/.test(input);
|
54
|
+
},
|
51
55
|
meridiem : function (hour, minute, isLower) {
|
52
56
|
if (hour < 4) {
|
53
57
|
return 'രാത്രി';
|
@@ -83,6 +83,21 @@
|
|
83
83
|
return symbolMap[match];
|
84
84
|
});
|
85
85
|
},
|
86
|
+
meridiemParse: /रात्री|सकाळी|दुपारी|सायंकाळी/,
|
87
|
+
meridiemHour : function (hour, meridiem) {
|
88
|
+
if (hour === 12) {
|
89
|
+
hour = 0;
|
90
|
+
}
|
91
|
+
if (meridiem === 'रात्री') {
|
92
|
+
return hour < 4 ? hour : hour + 12;
|
93
|
+
} else if (meridiem === 'सकाळी') {
|
94
|
+
return hour;
|
95
|
+
} else if (meridiem === 'दुपारी') {
|
96
|
+
return hour >= 10 ? hour : hour + 12;
|
97
|
+
} else if (meridiem === 'सायंकाळी') {
|
98
|
+
return hour + 12;
|
99
|
+
}
|
100
|
+
},
|
86
101
|
meridiem: function (hour, minute, isLower)
|
87
102
|
{
|
88
103
|
if (hour < 4) {
|
@@ -25,6 +25,19 @@
|
|
25
25
|
LLL : 'D MMMM YYYY [pukul] LT',
|
26
26
|
LLLL : 'dddd, D MMMM YYYY [pukul] LT'
|
27
27
|
},
|
28
|
+
meridiemParse: /pagi|tengahari|petang|malam/,
|
29
|
+
meridiemHour: function (hour, meridiem) {
|
30
|
+
if (hour === 12) {
|
31
|
+
hour = 0;
|
32
|
+
}
|
33
|
+
if (meridiem === 'pagi') {
|
34
|
+
return hour;
|
35
|
+
} else if (meridiem === 'tengahari') {
|
36
|
+
return hour >= 11 ? hour : hour + 12;
|
37
|
+
} else if (meridiem === 'petang' || meridiem === 'malam') {
|
38
|
+
return hour + 12;
|
39
|
+
}
|
40
|
+
},
|
28
41
|
meridiem : function (hours, minutes, isLower) {
|
29
42
|
if (hours < 11) {
|
30
43
|
return 'pagi';
|
@@ -60,6 +60,21 @@
|
|
60
60
|
return symbolMap[match];
|
61
61
|
});
|
62
62
|
},
|
63
|
+
meridiemParse: /राती|बिहान|दिउँसो|बेलुका|साँझ|राती/,
|
64
|
+
meridiemHour : function (hour, meridiem) {
|
65
|
+
if (hour === 12) {
|
66
|
+
hour = 0;
|
67
|
+
}
|
68
|
+
if (meridiem === 'राती') {
|
69
|
+
return hour < 3 ? hour : hour + 12;
|
70
|
+
} else if (meridiem === 'बिहान') {
|
71
|
+
return hour;
|
72
|
+
} else if (meridiem === 'दिउँसो') {
|
73
|
+
return hour >= 10 ? hour : hour + 12;
|
74
|
+
} else if (meridiem === 'बेलुका' || meridiem === 'साँझ') {
|
75
|
+
return hour + 12;
|
76
|
+
}
|
77
|
+
},
|
63
78
|
meridiem : function (hour, minute, isLower) {
|
64
79
|
if (hour < 3) {
|
65
80
|
return 'राती';
|
@@ -19,6 +19,10 @@
|
|
19
19
|
weekdays : 'E Diel_E Hënë_E Martë_E Mërkurë_E Enjte_E Premte_E Shtunë'.split('_'),
|
20
20
|
weekdaysShort : 'Die_Hën_Mar_Mër_Enj_Pre_Sht'.split('_'),
|
21
21
|
weekdaysMin : 'D_H_Ma_Më_E_P_Sh'.split('_'),
|
22
|
+
meridiemParse: /PD|MD/,
|
23
|
+
isPM: function (input) {
|
24
|
+
return input.charAt(0) === 'M';
|
25
|
+
},
|
22
26
|
meridiem : function (hours, minutes, isLower) {
|
23
27
|
return hours < 12 ? 'PD' : 'MD';
|
24
28
|
},
|
@@ -90,20 +90,36 @@
|
|
90
90
|
|
91
91
|
|
92
92
|
// refer http://ta.wikipedia.org/s/1er1
|
93
|
-
|
93
|
+
meridiemParse: /யாமம்|வைகறை|காலை|நண்பகல்|எற்பாடு|மாலை/,
|
94
94
|
meridiem : function (hour, minute, isLower) {
|
95
|
-
if (hour
|
96
|
-
return '
|
97
|
-
} else if (hour
|
98
|
-
return '
|
99
|
-
} else if (hour
|
100
|
-
return '
|
101
|
-
} else if (hour
|
102
|
-
return '
|
103
|
-
} else if (hour
|
104
|
-
return '
|
105
|
-
} else if (hour
|
106
|
-
return '
|
95
|
+
if (hour < 2) {
|
96
|
+
return ' யாமம்';
|
97
|
+
} else if (hour < 6) {
|
98
|
+
return ' வைகறை'; // வைகறை
|
99
|
+
} else if (hour < 10) {
|
100
|
+
return ' காலை'; // காலை
|
101
|
+
} else if (hour < 14) {
|
102
|
+
return ' நண்பகல்'; // நண்பகல்
|
103
|
+
} else if (hour < 18) {
|
104
|
+
return ' எற்பாடு'; // எற்பாடு
|
105
|
+
} else if (hour < 22) {
|
106
|
+
return ' மாலை'; // மாலை
|
107
|
+
} else {
|
108
|
+
return ' யாமம்';
|
109
|
+
}
|
110
|
+
},
|
111
|
+
meridiemHour : function (hour, meridiem) {
|
112
|
+
if (hour === 12) {
|
113
|
+
hour = 0;
|
114
|
+
}
|
115
|
+
if (meridiem === 'யாமம்') {
|
116
|
+
return hour < 2 ? hour : hour + 12;
|
117
|
+
} else if (meridiem === 'வைகறை' || meridiem === 'காலை') {
|
118
|
+
return hour;
|
119
|
+
} else if (meridiem === 'நண்பகல்') {
|
120
|
+
return hour >= 10 ? hour : hour + 12;
|
121
|
+
} else {
|
122
|
+
return hour + 12;
|
107
123
|
}
|
108
124
|
},
|
109
125
|
week : {
|
@@ -25,6 +25,10 @@
|
|
25
25
|
LLL : 'D MMMM YYYY เวลา LT',
|
26
26
|
LLLL : 'วันddddที่ D MMMM YYYY เวลา LT'
|
27
27
|
},
|
28
|
+
meridiemParse: /ก่อนเที่ยง|หลังเที่ยง/,
|
29
|
+
isPM: function (input) {
|
30
|
+
return input === 'หลังเที่ยง';
|
31
|
+
},
|
28
32
|
meridiem : function (hour, minute, isLower) {
|
29
33
|
if (hour < 12) {
|
30
34
|
return 'ก่อนเที่ยง';
|
@@ -123,6 +123,10 @@
|
|
123
123
|
|
124
124
|
// M. E.: those two are virtually unused but a user might want to implement them for his/her website for some reason
|
125
125
|
|
126
|
+
meridiemParse: /ночі|ранку|дня|вечора/,
|
127
|
+
isPM: function (input) {
|
128
|
+
return /^(дня|вечора)$/.test(input);
|
129
|
+
},
|
126
130
|
meridiem : function (hour, minute, isLower) {
|
127
131
|
if (hour < 4) {
|
128
132
|
return 'ночі';
|
@@ -30,6 +30,21 @@
|
|
30
30
|
lll : 'YYYY年MMMD日LT',
|
31
31
|
llll : 'YYYY年MMMD日ddddLT'
|
32
32
|
},
|
33
|
+
meridiemParse: /凌晨|早上|上午|中午|下午|晚上/,
|
34
|
+
meridiemHour: function (hour, meridiem) {
|
35
|
+
if (hour === 12) {
|
36
|
+
hour = 0;
|
37
|
+
}
|
38
|
+
if (meridiem === '凌晨' || meridiem === '早上' ||
|
39
|
+
meridiem === '上午') {
|
40
|
+
return hour;
|
41
|
+
} else if (meridiem === '下午' || meridiem === '晚上') {
|
42
|
+
return hour + 12;
|
43
|
+
} else {
|
44
|
+
// '中午'
|
45
|
+
return hour >= 11 ? hour : hour + 12;
|
46
|
+
}
|
47
|
+
},
|
33
48
|
meridiem : function (hour, minute, isLower) {
|
34
49
|
var hm = hour * 100 + minute;
|
35
50
|
if (hm < 600) {
|
@@ -29,6 +29,19 @@
|
|
29
29
|
lll : 'YYYY年MMMD日LT',
|
30
30
|
llll : 'YYYY年MMMD日ddddLT'
|
31
31
|
},
|
32
|
+
meridiemParse: /早上|上午|中午|下午|晚上/,
|
33
|
+
meridiemHour : function (hour, meridiem) {
|
34
|
+
if (hour === 12) {
|
35
|
+
hour = 0;
|
36
|
+
}
|
37
|
+
if (meridiem === '早上' || meridiem === '上午') {
|
38
|
+
return hour;
|
39
|
+
} else if (meridiem === '中午') {
|
40
|
+
return hour >= 11 ? hour : hour + 12;
|
41
|
+
} else if (meridiem === '下午' || meridiem === '晚上') {
|
42
|
+
return hour + 12;
|
43
|
+
}
|
44
|
+
},
|
32
45
|
meridiem : function (hour, minute, isLower) {
|
33
46
|
var hm = hour * 100 + minute;
|
34
47
|
if (hm < 900) {
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: momentjs-rails
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.
|
4
|
+
version: 2.9.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Derek Prior
|
@@ -80,6 +80,7 @@ files:
|
|
80
80
|
- vendor/assets/javascripts/moment/af.js
|
81
81
|
- vendor/assets/javascripts/moment/ar-ma.js
|
82
82
|
- vendor/assets/javascripts/moment/ar-sa.js
|
83
|
+
- vendor/assets/javascripts/moment/ar-tn.js
|
83
84
|
- vendor/assets/javascripts/moment/ar.js
|
84
85
|
- vendor/assets/javascripts/moment/az.js
|
85
86
|
- vendor/assets/javascripts/moment/be.js
|
@@ -108,6 +109,7 @@ files:
|
|
108
109
|
- vendor/assets/javascripts/moment/fo.js
|
109
110
|
- vendor/assets/javascripts/moment/fr-ca.js
|
110
111
|
- vendor/assets/javascripts/moment/fr.js
|
112
|
+
- vendor/assets/javascripts/moment/fy.js
|
111
113
|
- vendor/assets/javascripts/moment/gl.js
|
112
114
|
- vendor/assets/javascripts/moment/he.js
|
113
115
|
- vendor/assets/javascripts/moment/hi.js
|