|
|
@@ -1,5 +1,5 @@
|
|
|
/*!
|
|
|
- * Vue.js v2.6.7
|
|
|
+ * Vue.js v2.6.8
|
|
|
* (c) 2014-2019 Evan You
|
|
|
* Released under the MIT License.
|
|
|
*/
|
|
|
@@ -475,7 +475,7 @@ var config = ({
|
|
|
* 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 _
|
|
|
@@ -500,7 +500,7 @@ function def (obj, key, val, enumerable) {
|
|
|
/**
|
|
|
* Parse simple path.
|
|
|
*/
|
|
|
-var bailRE = new RegExp(("[^" + unicodeLetters + ".$_\\d]"));
|
|
|
+var bailRE = new RegExp(("[^" + (unicodeRegExp.source) + ".$_\\d]"));
|
|
|
function parsePath (path) {
|
|
|
if (bailRE.test(path)) {
|
|
|
return
|
|
|
@@ -1406,7 +1406,7 @@ function checkComponents (options) {
|
|
|
}
|
|
|
|
|
|
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.'
|
|
|
@@ -3620,17 +3620,21 @@ function resolveAsyncComponent (
|
|
|
return factory.resolved
|
|
|
}
|
|
|
|
|
|
+ var owner = currentRenderingInstance;
|
|
|
+ if (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 (!isDef(factory.owners)) {
|
|
|
var owners = factory.owners = [owner];
|
|
|
- var sync = true;
|
|
|
+ var sync = true
|
|
|
+
|
|
|
+ ;(owner).$on('hook:destroyed', function () { return remove(owners, owner); });
|
|
|
|
|
|
var forceRender = function (renderCompleted) {
|
|
|
for (var i = 0, l = owners.length; i < l; i++) {
|
|
|
@@ -5420,7 +5424,7 @@ Object.defineProperty(Vue, 'FunctionalRenderContext', {
|
|
|
value: FunctionalRenderContext
|
|
|
});
|
|
|
|
|
|
-Vue.version = '2.6.7';
|
|
|
+Vue.version = '2.6.8';
|
|
|
|
|
|
/* */
|
|
|
|
|
|
@@ -9230,7 +9234,7 @@ var isNonPhrasingTag = makeMap(
|
|
|
// 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*(\/?)>/;
|
|
|
@@ -9493,7 +9497,7 @@ function parseHTML (html, options) {
|
|
|
) {
|
|
|
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) {
|
|
|
@@ -9530,7 +9534,7 @@ var dynamicArgRE = /^\[.*\]$/;
|
|
|
|
|
|
var argRE = /:(.*)$/;
|
|
|
var bindRE = /^:|^\.|^v-bind:/;
|
|
|
-var modifierRE = /\.[^.]+/g;
|
|
|
+var modifierRE = /\.[^.\]]+(?=[^\]]*$)/g;
|
|
|
|
|
|
var slotRE = /^v-slot(:|$)|^#/;
|
|
|
|
|
|
@@ -9707,7 +9711,7 @@ function parse (
|
|
|
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);
|
|
|
@@ -9726,6 +9730,7 @@ function parse (
|
|
|
if (process.env.NODE_ENV !== 'production') {
|
|
|
if (options.outputSourceRange) {
|
|
|
element.start = start$1;
|
|
|
+ element.end = end;
|
|
|
element.rawAttrsMap = element.attrsList.reduce(function (cumulated, attr) {
|
|
|
cumulated[attr.name] = attr;
|
|
|
return cumulated
|
|
|
@@ -11215,7 +11220,7 @@ function genScopedSlots (
|
|
|
// 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 ||
|