mirror of
https://github.com/frappe/air-datepicker.git
synced 2026-01-14 11:01:22 +08:00
simplified RegExp for matching date parts, fixes #120
This commit is contained in:
parent
e412c9cffe
commit
a4000953e5
50
dist/js/datepicker.js
vendored
50
dist/js/datepicker.js
vendored
@ -377,6 +377,7 @@
|
|||||||
hours = d.hours,
|
hours = d.hours,
|
||||||
ampm = string.match(boundary('aa')) || string.match(boundary('AA')),
|
ampm = string.match(boundary('aa')) || string.match(boundary('AA')),
|
||||||
dayPeriod = 'am',
|
dayPeriod = 'am',
|
||||||
|
replacer = this._replacer,
|
||||||
validHours;
|
validHours;
|
||||||
|
|
||||||
if (this.opts.timepicker && this.timepicker && ampm) {
|
if (this.opts.timepicker && this.timepicker && ampm) {
|
||||||
@ -390,50 +391,59 @@
|
|||||||
case /@/.test(result):
|
case /@/.test(result):
|
||||||
result = result.replace(/@/, date.getTime());
|
result = result.replace(/@/, date.getTime());
|
||||||
case /aa/.test(result):
|
case /aa/.test(result):
|
||||||
result = result.replace(boundary('aa'), dayPeriod);
|
result = replacer(result, boundary('aa'), dayPeriod);
|
||||||
case /AA/.test(result):
|
case /AA/.test(result):
|
||||||
result = result.replace(boundary('AA'), dayPeriod.toUpperCase());
|
result = replacer(result, boundary('AA'), dayPeriod.toUpperCase());
|
||||||
case /dd/.test(result):
|
case /dd/.test(result):
|
||||||
result = result.replace(boundary('dd'), d.fullDate);
|
result = replacer(result, boundary('dd'), d.fullDate);
|
||||||
case /d/.test(result):
|
case /d/.test(result):
|
||||||
result = result.replace(boundary('d'), d.date);
|
result = replacer(result, boundary('d'), d.date);
|
||||||
case /DD/.test(result):
|
case /DD/.test(result):
|
||||||
result = result.replace(boundary('DD'), locale.days[d.day]);
|
result = replacer(result, boundary('DD'), locale.days[d.day]);
|
||||||
case /D/.test(result):
|
case /D/.test(result):
|
||||||
result = result.replace(boundary('D'), locale.daysShort[d.day]);
|
result = replacer(result, boundary('D'), locale.daysShort[d.day]);
|
||||||
case /mm/.test(result):
|
case /mm/.test(result):
|
||||||
result = result.replace(boundary('mm'), d.fullMonth);
|
result = replacer(result, boundary('mm'), d.fullMonth);
|
||||||
case /m/.test(result):
|
case /m/.test(result):
|
||||||
result = result.replace(boundary('m'), d.month + 1);
|
result = replacer(result, boundary('m'), d.month + 1);
|
||||||
case /MM/.test(result):
|
case /MM/.test(result):
|
||||||
result = result.replace(boundary('MM'), this.loc.months[d.month]);
|
result = replacer(result, boundary('MM'), this.loc.months[d.month]);
|
||||||
case /M/.test(result):
|
case /M/.test(result):
|
||||||
result = result.replace(boundary('M'), locale.monthsShort[d.month]);
|
result = replacer(result, boundary('M'), locale.monthsShort[d.month]);
|
||||||
case /ii/.test(result):
|
case /ii/.test(result):
|
||||||
result = result.replace(boundary('ii'), d.fullMinutes);
|
result = replacer(result, boundary('ii'), d.fullMinutes);
|
||||||
case /i/.test(result):
|
case /i/.test(result):
|
||||||
result = result.replace(boundary('i'), d.minutes);
|
result = replacer(result, boundary('i'), d.minutes);
|
||||||
case /hh/.test(result):
|
case /hh/.test(result):
|
||||||
result = result.replace(boundary('hh'), fullHours);
|
result = replacer(result, boundary('hh'), fullHours);
|
||||||
case /h/.test(result):
|
case /h/.test(result):
|
||||||
result = result.replace(boundary('h'), hours);
|
result = replacer(result, boundary('h'), hours);
|
||||||
case /yyyy/.test(result):
|
case /yyyy/.test(result):
|
||||||
result = result.replace(boundary('yyyy'), d.year);
|
result = replacer(result, boundary('yyyy'), d.year);
|
||||||
case /yyyy1/.test(result):
|
case /yyyy1/.test(result):
|
||||||
result = result.replace(boundary('yyyy1'), decade[0]);
|
result = replacer(result, boundary('yyyy1'), decade[0]);
|
||||||
case /yyyy2/.test(result):
|
case /yyyy2/.test(result):
|
||||||
result = result.replace(boundary('yyyy2'), decade[1]);
|
result = replacer(result, boundary('yyyy2'), decade[1]);
|
||||||
case /yy/.test(result):
|
case /yy/.test(result):
|
||||||
result = result.replace(boundary('yy'), d.year.toString().slice(-2));
|
result = replacer(result, boundary('yy'), d.year.toString().slice(-2));
|
||||||
}
|
}
|
||||||
|
|
||||||
return result;
|
return result;
|
||||||
},
|
},
|
||||||
|
|
||||||
_getWordBoundaryRegExp: function (sign) {
|
_replacer: function (str, reg, data) {
|
||||||
return new RegExp('\\b(?=[a-zA-Z0-9áäöüúÁßÉÄÖÜÚ<])' + sign + '(?![>a-zA-Z0-9áäöüÁßÉÄÖÜÚ])');
|
return str.replace(reg, function (match, p1,p2,p3) {
|
||||||
|
return p1 + data + p3;
|
||||||
|
})
|
||||||
},
|
},
|
||||||
|
|
||||||
|
_getWordBoundaryRegExp: function (sign) {
|
||||||
|
var symbols = '\\s|\\.|-|/|\\\\|,|\\$|\\!|\\?|:|;';
|
||||||
|
|
||||||
|
return new RegExp('(^|>|' + symbols + ')(' + sign + ')($|<|' + symbols + ')', 'g');
|
||||||
|
},
|
||||||
|
|
||||||
|
|
||||||
selectDate: function (date) {
|
selectDate: function (date) {
|
||||||
var _this = this,
|
var _this = this,
|
||||||
opts = _this.opts,
|
opts = _this.opts,
|
||||||
|
|||||||
2
dist/js/datepicker.min.js
vendored
2
dist/js/datepicker.min.js
vendored
File diff suppressed because one or more lines are too long
@ -377,6 +377,7 @@
|
|||||||
hours = d.hours,
|
hours = d.hours,
|
||||||
ampm = string.match(boundary('aa')) || string.match(boundary('AA')),
|
ampm = string.match(boundary('aa')) || string.match(boundary('AA')),
|
||||||
dayPeriod = 'am',
|
dayPeriod = 'am',
|
||||||
|
replacer = this._replacer,
|
||||||
validHours;
|
validHours;
|
||||||
|
|
||||||
if (this.opts.timepicker && this.timepicker && ampm) {
|
if (this.opts.timepicker && this.timepicker && ampm) {
|
||||||
@ -390,50 +391,59 @@
|
|||||||
case /@/.test(result):
|
case /@/.test(result):
|
||||||
result = result.replace(/@/, date.getTime());
|
result = result.replace(/@/, date.getTime());
|
||||||
case /aa/.test(result):
|
case /aa/.test(result):
|
||||||
result = result.replace(boundary('aa'), dayPeriod);
|
result = replacer(result, boundary('aa'), dayPeriod);
|
||||||
case /AA/.test(result):
|
case /AA/.test(result):
|
||||||
result = result.replace(boundary('AA'), dayPeriod.toUpperCase());
|
result = replacer(result, boundary('AA'), dayPeriod.toUpperCase());
|
||||||
case /dd/.test(result):
|
case /dd/.test(result):
|
||||||
result = result.replace(boundary('dd'), d.fullDate);
|
result = replacer(result, boundary('dd'), d.fullDate);
|
||||||
case /d/.test(result):
|
case /d/.test(result):
|
||||||
result = result.replace(boundary('d'), d.date);
|
result = replacer(result, boundary('d'), d.date);
|
||||||
case /DD/.test(result):
|
case /DD/.test(result):
|
||||||
result = result.replace(boundary('DD'), locale.days[d.day]);
|
result = replacer(result, boundary('DD'), locale.days[d.day]);
|
||||||
case /D/.test(result):
|
case /D/.test(result):
|
||||||
result = result.replace(boundary('D'), locale.daysShort[d.day]);
|
result = replacer(result, boundary('D'), locale.daysShort[d.day]);
|
||||||
case /mm/.test(result):
|
case /mm/.test(result):
|
||||||
result = result.replace(boundary('mm'), d.fullMonth);
|
result = replacer(result, boundary('mm'), d.fullMonth);
|
||||||
case /m/.test(result):
|
case /m/.test(result):
|
||||||
result = result.replace(boundary('m'), d.month + 1);
|
result = replacer(result, boundary('m'), d.month + 1);
|
||||||
case /MM/.test(result):
|
case /MM/.test(result):
|
||||||
result = result.replace(boundary('MM'), this.loc.months[d.month]);
|
result = replacer(result, boundary('MM'), this.loc.months[d.month]);
|
||||||
case /M/.test(result):
|
case /M/.test(result):
|
||||||
result = result.replace(boundary('M'), locale.monthsShort[d.month]);
|
result = replacer(result, boundary('M'), locale.monthsShort[d.month]);
|
||||||
case /ii/.test(result):
|
case /ii/.test(result):
|
||||||
result = result.replace(boundary('ii'), d.fullMinutes);
|
result = replacer(result, boundary('ii'), d.fullMinutes);
|
||||||
case /i/.test(result):
|
case /i/.test(result):
|
||||||
result = result.replace(boundary('i'), d.minutes);
|
result = replacer(result, boundary('i'), d.minutes);
|
||||||
case /hh/.test(result):
|
case /hh/.test(result):
|
||||||
result = result.replace(boundary('hh'), fullHours);
|
result = replacer(result, boundary('hh'), fullHours);
|
||||||
case /h/.test(result):
|
case /h/.test(result):
|
||||||
result = result.replace(boundary('h'), hours);
|
result = replacer(result, boundary('h'), hours);
|
||||||
case /yyyy/.test(result):
|
case /yyyy/.test(result):
|
||||||
result = result.replace(boundary('yyyy'), d.year);
|
result = replacer(result, boundary('yyyy'), d.year);
|
||||||
case /yyyy1/.test(result):
|
case /yyyy1/.test(result):
|
||||||
result = result.replace(boundary('yyyy1'), decade[0]);
|
result = replacer(result, boundary('yyyy1'), decade[0]);
|
||||||
case /yyyy2/.test(result):
|
case /yyyy2/.test(result):
|
||||||
result = result.replace(boundary('yyyy2'), decade[1]);
|
result = replacer(result, boundary('yyyy2'), decade[1]);
|
||||||
case /yy/.test(result):
|
case /yy/.test(result):
|
||||||
result = result.replace(boundary('yy'), d.year.toString().slice(-2));
|
result = replacer(result, boundary('yy'), d.year.toString().slice(-2));
|
||||||
}
|
}
|
||||||
|
|
||||||
return result;
|
return result;
|
||||||
},
|
},
|
||||||
|
|
||||||
_getWordBoundaryRegExp: function (sign) {
|
_replacer: function (str, reg, data) {
|
||||||
return new RegExp('\\b(?=[a-zA-Z0-9áäöüúÁßÉÄÖÜÚ<])' + sign + '(?![>a-zA-Z0-9áäöüÁßÉÄÖÜÚ])');
|
return str.replace(reg, function (match, p1,p2,p3) {
|
||||||
|
return p1 + data + p3;
|
||||||
|
})
|
||||||
},
|
},
|
||||||
|
|
||||||
|
_getWordBoundaryRegExp: function (sign) {
|
||||||
|
var symbols = '\\s|\\.|-|/|\\\\|,|\\$|\\!|\\?|:|;';
|
||||||
|
|
||||||
|
return new RegExp('(^|>|' + symbols + ')(' + sign + ')($|<|' + symbols + ')', 'g');
|
||||||
|
},
|
||||||
|
|
||||||
|
|
||||||
selectDate: function (date) {
|
selectDate: function (date) {
|
||||||
var _this = this,
|
var _this = this,
|
||||||
opts = _this.opts,
|
opts = _this.opts,
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user