update js libraries
This commit is contained in:
@@ -286,7 +286,19 @@
|
||||
padding: 4px 8px;
|
||||
}
|
||||
|
||||
.daterangepicker.show-ranges .drp-calendar.left {
|
||||
.daterangepicker.show-ranges.single.rtl .drp-calendar.left {
|
||||
border-right: 1px solid #ddd;
|
||||
}
|
||||
|
||||
.daterangepicker.show-ranges.single.ltr .drp-calendar.left {
|
||||
border-left: 1px solid #ddd;
|
||||
}
|
||||
|
||||
.daterangepicker.show-ranges.rtl .drp-calendar.right {
|
||||
border-right: 1px solid #ddd;
|
||||
}
|
||||
|
||||
.daterangepicker.show-ranges.ltr .drp-calendar.left {
|
||||
border-left: 1px solid #ddd;
|
||||
}
|
||||
|
||||
@@ -325,64 +337,74 @@
|
||||
/* Larger Screen Styling */
|
||||
@media (min-width: 564px) {
|
||||
.daterangepicker {
|
||||
width: auto; }
|
||||
.daterangepicker .ranges ul {
|
||||
width: 140px; }
|
||||
.daterangepicker.single .ranges ul {
|
||||
width: 100%; }
|
||||
.daterangepicker.single .drp-calendar.left {
|
||||
clear: none; }
|
||||
.daterangepicker.single.ltr .ranges, .daterangepicker.single.ltr .drp-calendar {
|
||||
float: left; }
|
||||
.daterangepicker.single.rtl .ranges, .daterangepicker.single.rtl .drp-calendar {
|
||||
float: right; }
|
||||
.daterangepicker.ltr {
|
||||
direction: ltr;
|
||||
text-align: left; }
|
||||
.daterangepicker.ltr .drp-calendar.left {
|
||||
clear: left;
|
||||
margin-right: 0; }
|
||||
.daterangepicker.ltr .drp-calendar.left .calendar-table {
|
||||
border-right: none;
|
||||
border-top-right-radius: 0;
|
||||
border-bottom-right-radius: 0; }
|
||||
.daterangepicker.ltr .drp-calendar.right {
|
||||
margin-left: 0; }
|
||||
.daterangepicker.ltr .drp-calendar.right .calendar-table {
|
||||
border-left: none;
|
||||
border-top-left-radius: 0;
|
||||
border-bottom-left-radius: 0; }
|
||||
.daterangepicker.ltr .drp-calendar.left .calendar-table {
|
||||
padding-right: 8px; }
|
||||
.daterangepicker.ltr .ranges, .daterangepicker.ltr .drp-calendar {
|
||||
float: left; }
|
||||
.daterangepicker.rtl {
|
||||
direction: rtl;
|
||||
text-align: right; }
|
||||
.daterangepicker.rtl .drp-calendar.left {
|
||||
clear: right;
|
||||
margin-left: 0; }
|
||||
.daterangepicker.rtl .drp-calendar.left .calendar-table {
|
||||
border-left: none;
|
||||
border-top-left-radius: 0;
|
||||
border-bottom-left-radius: 0; }
|
||||
.daterangepicker.rtl .drp-calendar.right {
|
||||
margin-right: 0; }
|
||||
.daterangepicker.rtl .drp-calendar.right .calendar-table {
|
||||
border-right: none;
|
||||
border-top-right-radius: 0;
|
||||
border-bottom-right-radius: 0; }
|
||||
.daterangepicker.rtl .drp-calendar.left .calendar-table {
|
||||
padding-left: 12px; }
|
||||
.daterangepicker.rtl .ranges, .daterangepicker.rtl .drp-calendar {
|
||||
text-align: right;
|
||||
float: right; } }
|
||||
width: auto;
|
||||
}
|
||||
|
||||
.daterangepicker .ranges ul {
|
||||
width: 140px;
|
||||
}
|
||||
|
||||
.daterangepicker.single .ranges ul {
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.daterangepicker.single .drp-calendar.left {
|
||||
clear: none;
|
||||
}
|
||||
|
||||
.daterangepicker.single .ranges, .daterangepicker.single .drp-calendar {
|
||||
float: left;
|
||||
}
|
||||
|
||||
.daterangepicker {
|
||||
direction: ltr;
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
.daterangepicker .drp-calendar.left {
|
||||
clear: left;
|
||||
margin-right: 0;
|
||||
}
|
||||
|
||||
.daterangepicker .drp-calendar.left .calendar-table {
|
||||
border-right: none;
|
||||
border-top-right-radius: 0;
|
||||
border-bottom-right-radius: 0;
|
||||
}
|
||||
|
||||
.daterangepicker .drp-calendar.right {
|
||||
margin-left: 0;
|
||||
}
|
||||
|
||||
.daterangepicker .drp-calendar.right .calendar-table {
|
||||
border-left: none;
|
||||
border-top-left-radius: 0;
|
||||
border-bottom-left-radius: 0;
|
||||
}
|
||||
|
||||
.daterangepicker .drp-calendar.left .calendar-table {
|
||||
padding-right: 8px;
|
||||
}
|
||||
|
||||
.daterangepicker .ranges, .daterangepicker .drp-calendar {
|
||||
float: left;
|
||||
}
|
||||
}
|
||||
|
||||
@media (min-width: 730px) {
|
||||
.daterangepicker .ranges {
|
||||
width: auto; }
|
||||
.daterangepicker.ltr .ranges {
|
||||
float: left; }
|
||||
width: auto;
|
||||
}
|
||||
|
||||
.daterangepicker .ranges {
|
||||
float: left;
|
||||
}
|
||||
|
||||
.daterangepicker.rtl .ranges {
|
||||
float: right; }
|
||||
float: right;
|
||||
}
|
||||
|
||||
.daterangepicker .drp-calendar.left {
|
||||
clear: none !important; } }
|
||||
clear: none !important;
|
||||
}
|
||||
}
|
||||
@@ -1,5 +1,5 @@
|
||||
/**
|
||||
* @version: 3.0.3
|
||||
* @version: 3.0.4
|
||||
* @author: Dan Grossman http://www.dangrossman.info/
|
||||
* @copyright: Copyright (c) 2012-2018 Dan Grossman. All rights reserved.
|
||||
* @license: Licensed under the MIT license. See http://www.opensource.org/licenses/mit-license.php
|
||||
@@ -11,6 +11,7 @@
|
||||
// AMD. Make globaly available as well
|
||||
define(['moment', 'jquery'], function (moment, jquery) {
|
||||
if (!jquery.fn) jquery.fn = {}; // webpack server rendering
|
||||
if (typeof moment !== 'function' && moment.default) moment = moment.default
|
||||
return factory(moment, jquery);
|
||||
});
|
||||
} else if (typeof module === 'object' && module.exports) {
|
||||
@@ -488,7 +489,7 @@
|
||||
this.endDate = moment(endDate);
|
||||
|
||||
if (!this.timePicker)
|
||||
this.endDate = this.endDate.add(1,'d').startOf('day').subtract(1,'second');
|
||||
this.endDate = this.endDate.endOf('day');
|
||||
|
||||
if (this.timePicker && this.timePickerIncrement)
|
||||
this.endDate.minute(Math.round(this.endDate.minute() / this.timePickerIncrement) * this.timePickerIncrement);
|
||||
@@ -575,6 +576,9 @@
|
||||
if (this.endDate) {
|
||||
hour = parseInt(this.container.find('.left .hourselect').val(), 10);
|
||||
minute = parseInt(this.container.find('.left .minuteselect').val(), 10);
|
||||
if (isNaN(minute)) {
|
||||
minute = parseInt(this.container.find('.left .minuteselect option:last').val(), 10);
|
||||
}
|
||||
second = this.timePickerSeconds ? parseInt(this.container.find('.left .secondselect').val(), 10) : 0;
|
||||
if (!this.timePicker24Hour) {
|
||||
var ampm = this.container.find('.left .ampmselect').val();
|
||||
@@ -586,6 +590,9 @@
|
||||
} else {
|
||||
hour = parseInt(this.container.find('.right .hourselect').val(), 10);
|
||||
minute = parseInt(this.container.find('.right .minuteselect').val(), 10);
|
||||
if (isNaN(minute)) {
|
||||
minute = parseInt(this.container.find('.right .minuteselect option:last').val(), 10);
|
||||
}
|
||||
second = this.timePickerSeconds ? parseInt(this.container.find('.right .secondselect').val(), 10) : 0;
|
||||
if (!this.timePicker24Hour) {
|
||||
var ampm = this.container.find('.right .ampmselect').val();
|
||||
@@ -709,7 +716,7 @@
|
||||
|
||||
var monthHtml = '<select class="monthselect">';
|
||||
for (var m = 0; m < 12; m++) {
|
||||
if ((!inMinYear || m >= minDate.month()) && (!inMaxYear || m <= maxDate.month())) {
|
||||
if ((!inMinYear || (minDate && m >= minDate.month())) && (!inMaxYear || (maxDate && m <= maxDate.month()))) {
|
||||
monthHtml += "<option value='" + m + "'" +
|
||||
(m === currentMonth ? " selected='selected'" : "") +
|
||||
">" + this.locale.monthNames[m] + "</option>";
|
||||
@@ -786,7 +793,7 @@
|
||||
|
||||
//grey out the dates in other months displayed at beginning and end of this calendar
|
||||
if (calendar[row][col].month() != calendar[1][1].month())
|
||||
classes.push('off');
|
||||
classes.push('off', 'ends');
|
||||
|
||||
//don't allow selection of dates before the minimum date
|
||||
if (this.minDate && calendar[row][col].isBefore(this.minDate, 'day'))
|
||||
@@ -851,7 +858,7 @@
|
||||
|
||||
var html, selected, minDate, maxDate = this.maxDate;
|
||||
|
||||
if (this.maxSpan && (!this.maxDate || this.startDate.clone().add(this.maxSpan).isAfter(this.maxDate)))
|
||||
if (this.maxSpan && (!this.maxDate || this.startDate.clone().add(this.maxSpan).isBefore(this.maxDate)))
|
||||
maxDate = this.startDate.clone().add(this.maxSpan);
|
||||
|
||||
if (side == 'left') {
|
||||
@@ -865,9 +872,9 @@
|
||||
var timeSelector = this.container.find('.drp-calendar.right .calendar-time');
|
||||
if (timeSelector.html() != '') {
|
||||
|
||||
selected.hour(selected.hour() || timeSelector.find('.hourselect option:selected').val());
|
||||
selected.minute(selected.minute() || timeSelector.find('.minuteselect option:selected').val());
|
||||
selected.second(selected.second() || timeSelector.find('.secondselect option:selected').val());
|
||||
selected.hour(!isNaN(selected.hour()) ? selected.hour() : timeSelector.find('.hourselect option:selected').val());
|
||||
selected.minute(!isNaN(selected.minute()) ? selected.minute() : timeSelector.find('.minuteselect option:selected').val());
|
||||
selected.second(!isNaN(selected.second()) ? selected.second() : timeSelector.find('.secondselect option:selected').val());
|
||||
|
||||
if (!this.timePicker24Hour) {
|
||||
var ampm = timeSelector.find('.ampmselect option:selected').val();
|
||||
@@ -1030,44 +1037,68 @@
|
||||
containerTop = this.element.offset().top - this.container.outerHeight() - parentOffset.top;
|
||||
else
|
||||
containerTop = this.element.offset().top + this.element.outerHeight() - parentOffset.top;
|
||||
|
||||
// Force the container to it's actual width
|
||||
this.container.css({
|
||||
top: 0,
|
||||
left: 0,
|
||||
right: 'auto'
|
||||
});
|
||||
var containerWidth = this.container.outerWidth();
|
||||
|
||||
this.container[this.drops == 'up' ? 'addClass' : 'removeClass']('drop-up');
|
||||
|
||||
if (this.opens == 'left') {
|
||||
this.container.css({
|
||||
top: containerTop,
|
||||
right: parentRightEdge - this.element.offset().left - this.element.outerWidth(),
|
||||
left: 'auto'
|
||||
});
|
||||
if (this.container.offset().left < 0) {
|
||||
var containerRight = parentRightEdge - this.element.offset().left - this.element.outerWidth();
|
||||
if (containerWidth + containerRight > $(window).width()) {
|
||||
this.container.css({
|
||||
top: containerTop,
|
||||
right: 'auto',
|
||||
left: 9
|
||||
});
|
||||
} else {
|
||||
this.container.css({
|
||||
top: containerTop,
|
||||
right: containerRight,
|
||||
left: 'auto'
|
||||
});
|
||||
}
|
||||
} else if (this.opens == 'center') {
|
||||
this.container.css({
|
||||
top: containerTop,
|
||||
left: this.element.offset().left - parentOffset.left + this.element.outerWidth() / 2
|
||||
- this.container.outerWidth() / 2,
|
||||
right: 'auto'
|
||||
});
|
||||
if (this.container.offset().left < 0) {
|
||||
var containerLeft = this.element.offset().left - parentOffset.left + this.element.outerWidth() / 2
|
||||
- containerWidth / 2;
|
||||
if (containerLeft < 0) {
|
||||
this.container.css({
|
||||
top: containerTop,
|
||||
right: 'auto',
|
||||
left: 9
|
||||
});
|
||||
}
|
||||
} else {
|
||||
this.container.css({
|
||||
top: containerTop,
|
||||
left: this.element.offset().left - parentOffset.left,
|
||||
right: 'auto'
|
||||
});
|
||||
if (this.container.offset().left + this.container.outerWidth() > $(window).width()) {
|
||||
} else if (containerLeft + containerWidth > $(window).width()) {
|
||||
this.container.css({
|
||||
top: containerTop,
|
||||
left: 'auto',
|
||||
right: 0
|
||||
});
|
||||
} else {
|
||||
this.container.css({
|
||||
top: containerTop,
|
||||
left: containerLeft,
|
||||
right: 'auto'
|
||||
});
|
||||
}
|
||||
} else {
|
||||
var containerLeft = this.element.offset().left - parentOffset.left;
|
||||
if (containerLeft + containerWidth > $(window).width()) {
|
||||
this.container.css({
|
||||
top: containerTop,
|
||||
left: 'auto',
|
||||
right: 0
|
||||
});
|
||||
} else {
|
||||
this.container.css({
|
||||
top: containerTop,
|
||||
left: containerLeft,
|
||||
right: 'auto'
|
||||
});
|
||||
}
|
||||
}
|
||||
},
|
||||
@@ -1272,6 +1303,9 @@
|
||||
hour = 0;
|
||||
}
|
||||
var minute = parseInt(this.container.find('.left .minuteselect').val(), 10);
|
||||
if (isNaN(minute)) {
|
||||
minute = parseInt(this.container.find('.left .minuteselect option:last').val(), 10);
|
||||
}
|
||||
var second = this.timePickerSeconds ? parseInt(this.container.find('.left .secondselect').val(), 10) : 0;
|
||||
date = date.clone().hour(hour).minute(minute).second(second);
|
||||
}
|
||||
@@ -1292,6 +1326,9 @@
|
||||
hour = 0;
|
||||
}
|
||||
var minute = parseInt(this.container.find('.right .minuteselect').val(), 10);
|
||||
if (isNaN(minute)) {
|
||||
minute = parseInt(this.container.find('.right .minuteselect option:last').val(), 10);
|
||||
}
|
||||
var second = this.timePickerSeconds ? parseInt(this.container.find('.right .secondselect').val(), 10) : 0;
|
||||
date = date.clone().hour(hour).minute(minute).second(second);
|
||||
}
|
||||
@@ -1320,7 +1357,7 @@
|
||||
var i = 0;
|
||||
for (var range in this.ranges) {
|
||||
if (this.timePicker) {
|
||||
var format = this.timePickerSeconds ? "YYYY-MM-DD hh:mm:ss" : "YYYY-MM-DD hh:mm";
|
||||
var format = this.timePickerSeconds ? "YYYY-MM-DD HH:mm:ss" : "YYYY-MM-DD HH:mm";
|
||||
//ignore times when comparing dates if time picker seconds is not enabled
|
||||
if (this.startDate.format(format) == this.ranges[range][0].format(format) && this.endDate.format(format) == this.ranges[range][1].format(format)) {
|
||||
customRange = false;
|
||||
@@ -1408,6 +1445,9 @@
|
||||
|
||||
var hour = parseInt(cal.find('.hourselect').val(), 10);
|
||||
var minute = parseInt(cal.find('.minuteselect').val(), 10);
|
||||
if (isNaN(minute)) {
|
||||
minute = parseInt(cal.find('.minuteselect option:last').val(), 10);
|
||||
}
|
||||
var second = this.timePickerSeconds ? parseInt(cal.find('.secondselect').val(), 10) : 0;
|
||||
|
||||
if (!this.timePicker24Hour) {
|
||||
File diff suppressed because one or more lines are too long
2
pdb-ui/src/main/resources/resources/js/jquery-3.4.0.min.js
vendored
Normal file
2
pdb-ui/src/main/resources/resources/js/jquery-3.4.0.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
@@ -1,5 +1,5 @@
|
||||
/*!
|
||||
* Vue.js v2.6.4
|
||||
* Vue.js v2.6.10
|
||||
* (c) 2014-2019 Evan You
|
||||
* Released under the MIT License.
|
||||
*/
|
||||
@@ -481,7 +481,7 @@
|
||||
* using https://www.w3.org/TR/html53/semantics-scripting.html#potentialcustomelementname
|
||||
* skipping \u10000-\uEFFFF due to it freezing up PhantomJS
|
||||
*/
|
||||
var unicodeLetters = 'a-zA-Z\u00B7\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u037D\u037F-\u1FFF\u200C-\u200D\u203F-\u2040\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD';
|
||||
var unicodeRegExp = /a-zA-Z\u00B7\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u037D\u037F-\u1FFF\u200C-\u200D\u203F-\u2040\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD/;
|
||||
|
||||
/**
|
||||
* Check if a string starts with $ or _
|
||||
@@ -506,7 +506,7 @@
|
||||
/**
|
||||
* Parse simple path.
|
||||
*/
|
||||
var bailRE = new RegExp(("[^" + unicodeLetters + ".$_\\d]"));
|
||||
var bailRE = new RegExp(("[^" + (unicodeRegExp.source) + ".$_\\d]"));
|
||||
function parsePath (path) {
|
||||
if (bailRE.test(path)) {
|
||||
return
|
||||
@@ -1410,7 +1410,7 @@
|
||||
}
|
||||
|
||||
function validateComponentName (name) {
|
||||
if (!new RegExp(("^[a-zA-Z][\\-\\.0-9_" + unicodeLetters + "]*$")).test(name)) {
|
||||
if (!new RegExp(("^[a-zA-Z][\\-\\.0-9_" + (unicodeRegExp.source) + "]*$")).test(name)) {
|
||||
warn(
|
||||
'Invalid component name: "' + name + '". Component names ' +
|
||||
'should conform to valid custom element name in html5 specification.'
|
||||
@@ -1825,23 +1825,30 @@
|
||||
/* */
|
||||
|
||||
function handleError (err, vm, info) {
|
||||
if (vm) {
|
||||
var cur = vm;
|
||||
while ((cur = cur.$parent)) {
|
||||
var hooks = cur.$options.errorCaptured;
|
||||
if (hooks) {
|
||||
for (var i = 0; i < hooks.length; i++) {
|
||||
try {
|
||||
var capture = hooks[i].call(cur, err, vm, info) === false;
|
||||
if (capture) { return }
|
||||
} catch (e) {
|
||||
globalHandleError(e, cur, 'errorCaptured hook');
|
||||
// Deactivate deps tracking while processing error handler to avoid possible infinite rendering.
|
||||
// See: https://github.com/vuejs/vuex/issues/1505
|
||||
pushTarget();
|
||||
try {
|
||||
if (vm) {
|
||||
var cur = vm;
|
||||
while ((cur = cur.$parent)) {
|
||||
var hooks = cur.$options.errorCaptured;
|
||||
if (hooks) {
|
||||
for (var i = 0; i < hooks.length; i++) {
|
||||
try {
|
||||
var capture = hooks[i].call(cur, err, vm, info) === false;
|
||||
if (capture) { return }
|
||||
} catch (e) {
|
||||
globalHandleError(e, cur, 'errorCaptured hook');
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
globalHandleError(err, vm, info);
|
||||
} finally {
|
||||
popTarget();
|
||||
}
|
||||
globalHandleError(err, vm, info);
|
||||
}
|
||||
|
||||
function invokeWithErrorHandling (
|
||||
@@ -1854,8 +1861,11 @@
|
||||
var res;
|
||||
try {
|
||||
res = args ? handler.apply(context, args) : handler.call(context);
|
||||
if (res && !res._isVue && isPromise(res)) {
|
||||
if (res && !res._isVue && isPromise(res) && !res._handled) {
|
||||
res.catch(function (e) { return handleError(e, vm, info + " (Promise/async)"); });
|
||||
// issue #9511
|
||||
// avoid catch triggering multiple times when nested calls
|
||||
res._handled = true;
|
||||
}
|
||||
} catch (e) {
|
||||
handleError(e, vm, info);
|
||||
@@ -2538,26 +2548,37 @@
|
||||
prevSlots
|
||||
) {
|
||||
var res;
|
||||
var hasNormalSlots = Object.keys(normalSlots).length > 0;
|
||||
var isStable = slots ? !!slots.$stable : !hasNormalSlots;
|
||||
var key = slots && slots.$key;
|
||||
if (!slots) {
|
||||
res = {};
|
||||
} else if (slots._normalized) {
|
||||
// fast path 1: child component re-render only, parent did not change
|
||||
return slots._normalized
|
||||
} else if (slots.$stable && prevSlots && prevSlots !== emptyObject) {
|
||||
// fast path 2: stable scoped slots, only need to normalize once
|
||||
} else if (
|
||||
isStable &&
|
||||
prevSlots &&
|
||||
prevSlots !== emptyObject &&
|
||||
key === prevSlots.$key &&
|
||||
!hasNormalSlots &&
|
||||
!prevSlots.$hasNormal
|
||||
) {
|
||||
// fast path 2: stable scoped slots w/ no normal slots to proxy,
|
||||
// only need to normalize once
|
||||
return prevSlots
|
||||
} else {
|
||||
res = {};
|
||||
for (var key in slots) {
|
||||
if (slots[key] && key[0] !== '$') {
|
||||
res[key] = normalizeScopedSlot(normalSlots, key, slots[key]);
|
||||
for (var key$1 in slots) {
|
||||
if (slots[key$1] && key$1[0] !== '$') {
|
||||
res[key$1] = normalizeScopedSlot(normalSlots, key$1, slots[key$1]);
|
||||
}
|
||||
}
|
||||
}
|
||||
// expose normal slots on scopedSlots
|
||||
for (var key$1 in normalSlots) {
|
||||
if (!(key$1 in res)) {
|
||||
res[key$1] = proxyNormalSlot(normalSlots, key$1);
|
||||
for (var key$2 in normalSlots) {
|
||||
if (!(key$2 in res)) {
|
||||
res[key$2] = proxyNormalSlot(normalSlots, key$2);
|
||||
}
|
||||
}
|
||||
// avoriaz seems to mock a non-extensible $scopedSlots object
|
||||
@@ -2565,18 +2586,22 @@
|
||||
if (slots && Object.isExtensible(slots)) {
|
||||
(slots)._normalized = res;
|
||||
}
|
||||
def(res, '$stable', slots ? !!slots.$stable : true);
|
||||
def(res, '$stable', isStable);
|
||||
def(res, '$key', key);
|
||||
def(res, '$hasNormal', hasNormalSlots);
|
||||
return res
|
||||
}
|
||||
|
||||
function normalizeScopedSlot(normalSlots, key, fn) {
|
||||
var normalized = function (scope) {
|
||||
var res = fn(scope || {});
|
||||
var normalized = function () {
|
||||
var res = arguments.length ? fn.apply(null, arguments) : fn({});
|
||||
res = res && typeof res === 'object' && !Array.isArray(res)
|
||||
? [res] // single vnode
|
||||
: normalizeChildren(res);
|
||||
return res && res.length === 0
|
||||
? undefined
|
||||
return res && (
|
||||
res.length === 0 ||
|
||||
(res.length === 1 && res[0].isComment) // #9658
|
||||
) ? undefined
|
||||
: res
|
||||
};
|
||||
// this is a slot using the new v-slot syntax without scope. although it is
|
||||
@@ -2756,12 +2781,13 @@
|
||||
: data.attrs || (data.attrs = {});
|
||||
}
|
||||
var camelizedKey = camelize(key);
|
||||
if (!(key in hash) && !(camelizedKey in hash)) {
|
||||
var hyphenatedKey = hyphenate(key);
|
||||
if (!(camelizedKey in hash) && !(hyphenatedKey in hash)) {
|
||||
hash[key] = value[key];
|
||||
|
||||
if (isSync) {
|
||||
var on = data.on || (data.on = {});
|
||||
on[("update:" + camelizedKey)] = function ($event) {
|
||||
on[("update:" + key)] = function ($event) {
|
||||
value[key] = $event;
|
||||
};
|
||||
}
|
||||
@@ -2860,14 +2886,16 @@
|
||||
|
||||
function resolveScopedSlots (
|
||||
fns, // see flow/vnode
|
||||
res,
|
||||
// the following are added in 2.6
|
||||
hasDynamicKeys,
|
||||
res
|
||||
contentHashKey
|
||||
) {
|
||||
res = res || { $stable: !hasDynamicKeys };
|
||||
for (var i = 0; i < fns.length; i++) {
|
||||
var slot = fns[i];
|
||||
if (Array.isArray(slot)) {
|
||||
resolveScopedSlots(slot, hasDynamicKeys, res);
|
||||
resolveScopedSlots(slot, res, hasDynamicKeys);
|
||||
} else if (slot) {
|
||||
// marker for reverse proxying v-slot without scope on this.$slots
|
||||
if (slot.proxy) {
|
||||
@@ -2876,6 +2904,9 @@
|
||||
res[slot.key] = slot.fn;
|
||||
}
|
||||
}
|
||||
if (contentHashKey) {
|
||||
(res).$key = contentHashKey;
|
||||
}
|
||||
return res
|
||||
}
|
||||
|
||||
@@ -3590,17 +3621,23 @@
|
||||
return factory.resolved
|
||||
}
|
||||
|
||||
var owner = currentRenderingInstance;
|
||||
if (owner && isDef(factory.owners) && factory.owners.indexOf(owner) === -1) {
|
||||
// already pending
|
||||
factory.owners.push(owner);
|
||||
}
|
||||
|
||||
if (isTrue(factory.loading) && isDef(factory.loadingComp)) {
|
||||
return factory.loadingComp
|
||||
}
|
||||
|
||||
var owner = currentRenderingInstance;
|
||||
if (isDef(factory.owners)) {
|
||||
// already pending
|
||||
factory.owners.push(owner);
|
||||
} else {
|
||||
if (owner && !isDef(factory.owners)) {
|
||||
var owners = factory.owners = [owner];
|
||||
var sync = true;
|
||||
var timerLoading = null;
|
||||
var timerTimeout = null
|
||||
|
||||
;(owner).$on('hook:destroyed', function () { return remove(owners, owner); });
|
||||
|
||||
var forceRender = function (renderCompleted) {
|
||||
for (var i = 0, l = owners.length; i < l; i++) {
|
||||
@@ -3609,6 +3646,14 @@
|
||||
|
||||
if (renderCompleted) {
|
||||
owners.length = 0;
|
||||
if (timerLoading !== null) {
|
||||
clearTimeout(timerLoading);
|
||||
timerLoading = null;
|
||||
}
|
||||
if (timerTimeout !== null) {
|
||||
clearTimeout(timerTimeout);
|
||||
timerTimeout = null;
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
@@ -3655,7 +3700,8 @@
|
||||
if (res.delay === 0) {
|
||||
factory.loading = true;
|
||||
} else {
|
||||
setTimeout(function () {
|
||||
timerLoading = setTimeout(function () {
|
||||
timerLoading = null;
|
||||
if (isUndef(factory.resolved) && isUndef(factory.error)) {
|
||||
factory.loading = true;
|
||||
forceRender(false);
|
||||
@@ -3665,7 +3711,8 @@
|
||||
}
|
||||
|
||||
if (isDef(res.timeout)) {
|
||||
setTimeout(function () {
|
||||
timerTimeout = setTimeout(function () {
|
||||
timerTimeout = null;
|
||||
if (isUndef(factory.resolved)) {
|
||||
reject(
|
||||
"timeout (" + (res.timeout) + "ms)"
|
||||
@@ -4053,9 +4100,12 @@
|
||||
// check if there are dynamic scopedSlots (hand-written or compiled but with
|
||||
// dynamic slot names). Static scoped slots compiled from template has the
|
||||
// "$stable" marker.
|
||||
var newScopedSlots = parentVnode.data.scopedSlots;
|
||||
var oldScopedSlots = vm.$scopedSlots;
|
||||
var hasDynamicScopedSlot = !!(
|
||||
(parentVnode.data.scopedSlots && !parentVnode.data.scopedSlots.$stable) ||
|
||||
(vm.$scopedSlots !== emptyObject && !vm.$scopedSlots.$stable)
|
||||
(newScopedSlots && !newScopedSlots.$stable) ||
|
||||
(oldScopedSlots !== emptyObject && !oldScopedSlots.$stable) ||
|
||||
(newScopedSlots && vm.$scopedSlots.$key !== newScopedSlots.$key)
|
||||
);
|
||||
|
||||
// Any static slot children from the parent may have changed during parent's
|
||||
@@ -4208,11 +4258,21 @@
|
||||
// timestamp can either be hi-res (relative to page load) or low-res
|
||||
// (relative to UNIX epoch), so in order to compare time we have to use the
|
||||
// same timestamp type when saving the flush timestamp.
|
||||
if (inBrowser && getNow() > document.createEvent('Event').timeStamp) {
|
||||
// if the low-res timestamp which is bigger than the event timestamp
|
||||
// (which is evaluated AFTER) it means the event is using a hi-res timestamp,
|
||||
// and we need to use the hi-res version for event listeners as well.
|
||||
getNow = function () { return performance.now(); };
|
||||
// All IE versions use low-res event timestamps, and have problematic clock
|
||||
// implementations (#9632)
|
||||
if (inBrowser && !isIE) {
|
||||
var performance = window.performance;
|
||||
if (
|
||||
performance &&
|
||||
typeof performance.now === 'function' &&
|
||||
getNow() > document.createEvent('Event').timeStamp
|
||||
) {
|
||||
// if the event timestamp, although evaluated AFTER the Date.now(), is
|
||||
// smaller than it, it means the event is using a hi-res timestamp,
|
||||
// and we need to use the hi-res version for event listener timestamps as
|
||||
// well.
|
||||
getNow = function () { return performance.now(); };
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -5377,7 +5437,7 @@
|
||||
value: FunctionalRenderContext
|
||||
});
|
||||
|
||||
Vue.version = '2.6.4';
|
||||
Vue.version = '2.6.10';
|
||||
|
||||
/* */
|
||||
|
||||
@@ -7463,9 +7523,19 @@
|
||||
var original = handler;
|
||||
handler = original._wrapper = function (e) {
|
||||
if (
|
||||
// no bubbling, should always fire.
|
||||
// this is just a safety net in case event.timeStamp is unreliable in
|
||||
// certain weird environments...
|
||||
e.target === e.currentTarget ||
|
||||
// event is fired after handler attachment
|
||||
e.timeStamp >= attachedTimestamp ||
|
||||
// bail for environments that have buggy event.timeStamp implementations
|
||||
// #9462 iOS 9 bug: event.timeStamp is 0 after history.pushState
|
||||
// #9681 QtWebEngine event.timeStamp is negative value
|
||||
e.timeStamp <= 0 ||
|
||||
// #9448 bail if event is fired in another document in a multi-page
|
||||
// electron/nw.js app
|
||||
// electron/nw.js app, since event.timeStamp will be using a different
|
||||
// starting reference
|
||||
e.target.ownerDocument !== document
|
||||
) {
|
||||
return original.apply(this, arguments)
|
||||
@@ -7529,10 +7599,11 @@
|
||||
}
|
||||
|
||||
for (key in oldProps) {
|
||||
if (isUndef(props[key])) {
|
||||
if (!(key in props)) {
|
||||
elm[key] = '';
|
||||
}
|
||||
}
|
||||
|
||||
for (key in props) {
|
||||
cur = props[key];
|
||||
// ignore children if the node has textContent or innerHTML,
|
||||
@@ -7548,15 +7619,7 @@
|
||||
}
|
||||
}
|
||||
|
||||
// skip the update if old and new VDOM state is the same.
|
||||
// the only exception is `value` where the DOM value may be temporarily
|
||||
// out of sync with VDOM state due to focus, composition and modifiers.
|
||||
// This also covers #4521 by skipping the unnecesarry `checked` update.
|
||||
if (key !== 'value' && cur === oldProps[key]) {
|
||||
continue
|
||||
}
|
||||
|
||||
if (key === 'value') {
|
||||
if (key === 'value' && elm.tagName !== 'PROGRESS') {
|
||||
// store value as _value as well since
|
||||
// non-string values will be stringified
|
||||
elm._value = cur;
|
||||
@@ -7576,8 +7639,18 @@
|
||||
while (svg.firstChild) {
|
||||
elm.appendChild(svg.firstChild);
|
||||
}
|
||||
} else {
|
||||
elm[key] = cur;
|
||||
} else if (
|
||||
// skip the update if old and new VDOM state is the same.
|
||||
// `value` is handled separately because the DOM value may be temporarily
|
||||
// out of sync with VDOM state due to focus, composition and modifiers.
|
||||
// This #4521 by skipping the unnecesarry `checked` update.
|
||||
cur !== oldProps[key]
|
||||
) {
|
||||
// some property updates can throw
|
||||
// e.g. `value` on <progress> w/ non-finite value
|
||||
try {
|
||||
elm[key] = cur;
|
||||
} catch (e) {}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -8078,8 +8151,8 @@
|
||||
var context = activeInstance;
|
||||
var transitionNode = activeInstance.$vnode;
|
||||
while (transitionNode && transitionNode.parent) {
|
||||
transitionNode = transitionNode.parent;
|
||||
context = transitionNode.context;
|
||||
transitionNode = transitionNode.parent;
|
||||
}
|
||||
|
||||
var isAppear = !context._isMounted || !vnode.isRootInsert;
|
||||
@@ -9169,7 +9242,7 @@
|
||||
// Regular Expressions for parsing tags and attributes
|
||||
var attribute = /^\s*([^\s"'<>\/=]+)(?:\s*(=)\s*(?:"([^"]*)"+|'([^']*)'+|([^\s"'=<>`]+)))?/;
|
||||
var dynamicArgAttribute = /^\s*((?:v-[\w-]+:|@|:|#)\[[^=]+\][^\s"'<>\/=]*)(?:\s*(=)\s*(?:"([^"]*)"+|'([^']*)'+|([^\s"'=<>`]+)))?/;
|
||||
var ncname = "[a-zA-Z_][\\-\\.0-9_a-zA-Z" + unicodeLetters + "]*";
|
||||
var ncname = "[a-zA-Z_][\\-\\.0-9_a-zA-Z" + (unicodeRegExp.source) + "]*";
|
||||
var qnameCapture = "((?:" + ncname + "\\:)?" + ncname + ")";
|
||||
var startTagOpen = new RegExp(("^<" + qnameCapture));
|
||||
var startTagClose = /^\s*(\/?)>/;
|
||||
@@ -9431,7 +9504,7 @@
|
||||
) {
|
||||
options.warn(
|
||||
("tag <" + (stack[i].tag) + "> has no matching end tag."),
|
||||
{ start: stack[i].start }
|
||||
{ start: stack[i].start, end: stack[i].end }
|
||||
);
|
||||
}
|
||||
if (options.end) {
|
||||
@@ -9468,7 +9541,7 @@
|
||||
|
||||
var argRE = /:(.*)$/;
|
||||
var bindRE = /^:|^\.|^v-bind:/;
|
||||
var modifierRE = /\.[^.]+/g;
|
||||
var modifierRE = /\.[^.\]]+(?=[^\]]*$)/g;
|
||||
|
||||
var slotRE = /^v-slot(:|$)|^#/;
|
||||
|
||||
@@ -9645,7 +9718,7 @@
|
||||
shouldDecodeNewlinesForHref: options.shouldDecodeNewlinesForHref,
|
||||
shouldKeepComment: options.comments,
|
||||
outputSourceRange: options.outputSourceRange,
|
||||
start: function start (tag, attrs, unary, start$1) {
|
||||
start: function start (tag, attrs, unary, start$1, end) {
|
||||
// check namespace.
|
||||
// inherit parent ns if there is one
|
||||
var ns = (currentParent && currentParent.ns) || platformGetTagNamespace(tag);
|
||||
@@ -9664,6 +9737,7 @@
|
||||
{
|
||||
if (options.outputSourceRange) {
|
||||
element.start = start$1;
|
||||
element.end = end;
|
||||
element.rawAttrsMap = element.attrsList.reduce(function (cumulated, attr) {
|
||||
cumulated[attr.name] = attr;
|
||||
return cumulated
|
||||
@@ -9785,7 +9859,7 @@
|
||||
text = preserveWhitespace ? ' ' : '';
|
||||
}
|
||||
if (text) {
|
||||
if (whitespaceOption === 'condense') {
|
||||
if (!inPre && whitespaceOption === 'condense') {
|
||||
// condense consecutive whitespaces into single space
|
||||
text = text.replace(whitespaceRE$1, ' ');
|
||||
}
|
||||
@@ -10646,7 +10720,7 @@
|
||||
|
||||
/* */
|
||||
|
||||
var fnExpRE = /^([\w$_]+|\([^)]*?\))\s*=>|^function\s*\(/;
|
||||
var fnExpRE = /^([\w$_]+|\([^)]*?\))\s*=>|^function\s*(?:[\w$]+)?\s*\(/;
|
||||
var fnInvokeRE = /\([^)]*?\);*$/;
|
||||
var simplePathRE = /^[A-Za-z_$][\w$]*(?:\.[A-Za-z_$][\w$]*|\['[^']*?']|\["[^"]*?"]|\[\d+]|\[[A-Za-z_$][\w$]*])*$/;
|
||||
|
||||
@@ -10781,7 +10855,13 @@
|
||||
}
|
||||
|
||||
function genKeyFilter (keys) {
|
||||
return ("if(('keyCode' in $event)&&" + (keys.map(genFilterCode).join('&&')) + ")return null;")
|
||||
return (
|
||||
// make sure the key filters only apply to KeyboardEvents
|
||||
// #9441: can't use 'keyCode' in $event because Chrome autofill fires fake
|
||||
// key events that do not have keyCode property...
|
||||
"if(!$event.type.indexOf('key')&&" +
|
||||
(keys.map(genFilterCode).join('&&')) + ")return null;"
|
||||
)
|
||||
}
|
||||
|
||||
function genFilterCode (key) {
|
||||
@@ -11142,26 +11222,68 @@
|
||||
// components with only scoped slots to skip forced updates from parent.
|
||||
// but in some cases we have to bail-out of this optimization
|
||||
// for example if the slot contains dynamic names, has v-if or v-for on them...
|
||||
var needsForceUpdate = Object.keys(slots).some(function (key) {
|
||||
var needsForceUpdate = el.for || Object.keys(slots).some(function (key) {
|
||||
var slot = slots[key];
|
||||
return slot.slotTargetDynamic || slot.if || slot.for
|
||||
return (
|
||||
slot.slotTargetDynamic ||
|
||||
slot.if ||
|
||||
slot.for ||
|
||||
containsSlotChild(slot) // is passing down slot from parent which may be dynamic
|
||||
)
|
||||
});
|
||||
// OR when it is inside another scoped slot (the reactivity is disconnected)
|
||||
// #9438
|
||||
|
||||
// #9534: if a component with scoped slots is inside a conditional branch,
|
||||
// it's possible for the same component to be reused but with different
|
||||
// compiled slot content. To avoid that, we generate a unique key based on
|
||||
// the generated code of all the slot contents.
|
||||
var needsKey = !!el.if;
|
||||
|
||||
// OR when it is inside another scoped slot or v-for (the reactivity may be
|
||||
// disconnected due to the intermediate scope variable)
|
||||
// #9438, #9506
|
||||
// TODO: this can be further optimized by properly analyzing in-scope bindings
|
||||
// and skip force updating ones that do not actually use scope variables.
|
||||
if (!needsForceUpdate) {
|
||||
var parent = el.parent;
|
||||
while (parent) {
|
||||
if (parent.slotScope && parent.slotScope !== emptySlotScopeToken) {
|
||||
if (
|
||||
(parent.slotScope && parent.slotScope !== emptySlotScopeToken) ||
|
||||
parent.for
|
||||
) {
|
||||
needsForceUpdate = true;
|
||||
break
|
||||
}
|
||||
if (parent.if) {
|
||||
needsKey = true;
|
||||
}
|
||||
parent = parent.parent;
|
||||
}
|
||||
}
|
||||
|
||||
return ("scopedSlots:_u([" + (Object.keys(slots).map(function (key) {
|
||||
return genScopedSlot(slots[key], state)
|
||||
}).join(',')) + "]" + (needsForceUpdate ? ",true" : "") + ")")
|
||||
var generatedSlots = Object.keys(slots)
|
||||
.map(function (key) { return genScopedSlot(slots[key], state); })
|
||||
.join(',');
|
||||
|
||||
return ("scopedSlots:_u([" + generatedSlots + "]" + (needsForceUpdate ? ",null,true" : "") + (!needsForceUpdate && needsKey ? (",null,false," + (hash(generatedSlots))) : "") + ")")
|
||||
}
|
||||
|
||||
function hash(str) {
|
||||
var hash = 5381;
|
||||
var i = str.length;
|
||||
while(i) {
|
||||
hash = (hash * 33) ^ str.charCodeAt(--i);
|
||||
}
|
||||
return hash >>> 0
|
||||
}
|
||||
|
||||
function containsSlotChild (el) {
|
||||
if (el.type === 1) {
|
||||
if (el.tag === 'slot') {
|
||||
return true
|
||||
}
|
||||
return el.children.some(containsSlotChild)
|
||||
}
|
||||
return false
|
||||
}
|
||||
|
||||
function genScopedSlot (
|
||||
@@ -11486,11 +11608,13 @@
|
||||
|
||||
function repeat$1 (str, n) {
|
||||
var result = '';
|
||||
while (true) { // eslint-disable-line
|
||||
if (n & 1) { result += str; }
|
||||
n >>>= 1;
|
||||
if (n <= 0) { break }
|
||||
str += str;
|
||||
if (n > 0) {
|
||||
while (true) { // eslint-disable-line
|
||||
if (n & 1) { result += str; }
|
||||
n >>>= 1;
|
||||
if (n <= 0) { break }
|
||||
str += str;
|
||||
}
|
||||
}
|
||||
return result
|
||||
}
|
||||
6
pdb-ui/src/main/resources/resources/js/vue-2.6.10.min.js
vendored
Normal file
6
pdb-ui/src/main/resources/resources/js/vue-2.6.10.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -1,21 +1,21 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<script type="text/javascript" src="js/jquery-3.3.1.min.js"></script>
|
||||
<script type="text/javascript" src="js/jquery-3.4.0.min.js"></script>
|
||||
<script type="text/javascript" src="js/moment-2.24.0.min.js"></script>
|
||||
<script type="text/javascript" src="js/daterangepicker-3.0.3.js"></script>
|
||||
<script type="text/javascript" src="js/daterangepicker-3.0.4.js"></script>
|
||||
<script type="text/javascript" src="js/invaders.js"></script>
|
||||
{{#isProduction}}
|
||||
<script type="text/javascript" src="js/vue-2.6.4.min.js"></script>
|
||||
<script type="text/javascript" src="js/vue-2.6.10.min.js"></script>
|
||||
{{/isProduction}}
|
||||
{{^isProduction}}
|
||||
<script type="text/javascript" src="js/vue-2.6.4-dev.js"></script>
|
||||
<script type="text/javascript" src="js/vue-2.6.10-dev.js"></script>
|
||||
{{/isProduction}}
|
||||
<script type="text/javascript" src="js/ui.js"></script>
|
||||
<link rel="stylesheet" type="text/css" href="css/design.css">
|
||||
<link rel="stylesheet" type="text/css" href="css/font-awesome.min.css">
|
||||
<link rel="stylesheet" type="text/css" href="css/invaders.css">
|
||||
<link rel="stylesheet" type="text/css" href="css/daterangepicker-3.0.3.css" />
|
||||
<link rel="stylesheet" type="text/css" href="css/daterangepicker-3.0.4.css" />
|
||||
|
||||
|
||||
</head>
|
||||
|
||||
Reference in New Issue
Block a user