vue 2.6.10 → 2.6.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -40,28 +40,11 @@ Funds donated via Patreon go directly to support Evan You's full-time work on Vu
40
40
  <table>
41
41
  <tbody>
42
42
  <tr>
43
- <td align="center" valign="middle">
44
- <a href="https://moduscreate.com/?utm_source=Vue&utm_medium=Partnership&utm_campaign=VueShip" target="_blank">
45
- <img width="222px" src="https://raw.githubusercontent.com/vuejs/vuejs.org/master/themes/vue/source/images/modus.png">
46
- </a>
47
- </td>
48
- <td align="center" valign="middle">
49
- <a href="https://www.bitsrc.io/?utm_source=vue&utm_medium=vue&utm_campaign=vue&utm_term=vue&utm_content=vue" target="_blank">
50
- <img width="222px" src="https://raw.githubusercontent.com/vuejs/vuejs.org/master/themes/vue/source/images/bit.png">
51
- </a>
52
- </td>
53
- <td align="center" valign="middle">
54
- <a href="http://tooltwist.com/" target="_blank">
55
- <img width="222px" src="https://raw.githubusercontent.com/vuejs/vuejs.org/master/themes/vue/source/images/tooltwist.png">
56
- </a>
57
- </td>
58
43
  <td align="center" valign="middle">
59
44
  <a href="https://vueschool.io/?utm_source=Vuejs.org&utm_medium=Banner&utm_campaign=Sponsored%20Banner&utm_content=V1" target="_blank">
60
45
  <img width="222px" src="https://raw.githubusercontent.com/vuejs/vuejs.org/master/themes/vue/source/images/vueschool.png">
61
46
  </a>
62
47
  </td>
63
- </tr><tr></tr>
64
- <tr>
65
48
  <td align="center" valign="middle">
66
49
  <a href="https://vehikl.com/" target="_blank">
67
50
  <img width="222px" src="https://raw.githubusercontent.com/vuejs/vuejs.org/master/themes/vue/source/images/vehikl.png">
@@ -72,6 +55,11 @@ Funds donated via Patreon go directly to support Evan You's full-time work on Vu
72
55
  <img width="222px" src="https://raw.githubusercontent.com/vuejs/vuejs.org/master/themes/vue/source/images/nativescript.png">
73
56
  </a>
74
57
  </td>
58
+ <td align="center" valign="middle">
59
+ <a href="https://retool.com/?utm_source=sponsor&utm_campaign=vue" target="_blank">
60
+ <img width="222px" src="https://raw.githubusercontent.com/vuejs/vuejs.org/master/themes/vue/source/images/retool.png">
61
+ </a>
62
+ </td>
75
63
  </tr><tr></tr>
76
64
  </tbody>
77
65
  </table>
@@ -92,7 +80,7 @@ Funds donated via Patreon go directly to support Evan You's full-time work on Vu
92
80
  </table>
93
81
  <!--special-china end-->
94
82
 
95
- <h3 align="center">Gold Sponsors</h4>
83
+ <h3 align="center">Gold Sponsors</h3>
96
84
 
97
85
  <!--gold start-->
98
86
  <table>
@@ -120,7 +108,7 @@ Funds donated via Patreon go directly to support Evan You's full-time work on Vu
120
108
  </td>
121
109
  <td align="center" valign="middle">
122
110
  <a href="https://www.frontenddeveloperlove.com/" target="_blank">
123
- <img width="148px" src="https://raw.githubusercontent.com/vuejs/vuejs.org/master/themes/vue/source/images/frontend_love.png">
111
+ <img width="148px" src="https://raw.githubusercontent.com/vuejs/vuejs.org/master/themes/vue/source/images/frontendlove.png">
124
112
  </a>
125
113
  </td>
126
114
  <td align="center" valign="middle">
@@ -130,11 +118,6 @@ Funds donated via Patreon go directly to support Evan You's full-time work on Vu
130
118
  </td>
131
119
  </tr><tr></tr>
132
120
  <tr>
133
- <td align="center" valign="middle">
134
- <a href="https://vuetifyjs.com" target="_blank">
135
- <img width="148px" src="https://raw.githubusercontent.com/vuejs/vuejs.org/master/themes/vue/source/images/vuetify.png">
136
- </a>
137
- </td>
138
121
  <td align="center" valign="middle">
139
122
  <a href="https://neds.com.au/" target="_blank">
140
123
  <img width="148px" src="https://raw.githubusercontent.com/vuejs/vuejs.org/master/themes/vue/source/images/neds.png">
@@ -156,67 +139,109 @@ Funds donated via Patreon go directly to support Evan You's full-time work on Vu
156
139
  </a>
157
140
  </td>
158
141
  <td align="center" valign="middle">
159
- <a href="http://www.syncfusion.com/?utm_source=vuejs&utm_medium=list&utm_campaign=vuejsjslistcy19" target="_blank">
160
- <img width="148px" src="https://raw.githubusercontent.com/vuejs/vuejs.org/master/themes/vue/source/images/syncfusion.png">
142
+ <a href="https://opteo.com/vue" target="_blank">
143
+ <img width="148px" src="https://raw.githubusercontent.com/vuejs/vuejs.org/master/themes/vue/source/images/opteo.png">
144
+ </a>
145
+ </td>
146
+ <td align="center" valign="middle">
147
+ <a href="https://devsquad.com/" target="_blank">
148
+ <img width="148px" src="https://raw.githubusercontent.com/vuejs/vuejs.org/master/themes/vue/source/images/devsquad.png">
161
149
  </a>
162
150
  </td>
163
151
  </tr><tr></tr>
164
152
  <tr>
165
153
  <td align="center" valign="middle">
166
- <a href="https://opteo.com/vue" target="_blank">
167
- <img width="148px" src="https://raw.githubusercontent.com/vuejs/vuejs.org/master/themes/vue/source/images/opteo.png">
154
+ <a href="https://www.firesticktricks.com/" target="_blank">
155
+ <img width="148px" src="https://raw.githubusercontent.com/vuejs/vuejs.org/master/themes/vue/source/images/firestick_tricks.png">
168
156
  </a>
169
157
  </td>
170
158
  <td align="center" valign="middle">
171
- <a href="https://devsquad.com/" target="_blank">
172
- <img width="148px" src="https://raw.githubusercontent.com/vuejs/vuejs.org/master/themes/vue/source/images/devsquad.png">
159
+ <a href="https://intygrate.com/" target="_blank">
160
+ <img width="148px" src="https://raw.githubusercontent.com/vuejs/vuejs.org/master/themes/vue/source/images/intygrate.png">
173
161
  </a>
174
162
  </td>
175
163
  <td align="center" valign="middle">
176
- <a href="https://www.inkoop.in/" target="_blank">
177
- <img width="148px" src="https://raw.githubusercontent.com/vuejs/vuejs.org/master/themes/vue/source/images/inkoop.png">
164
+ <a href="https://passionatepeople.io/" target="_blank">
165
+ <img width="148px" src="https://raw.githubusercontent.com/vuejs/vuejs.org/master/themes/vue/source/images/passionate_people.png">
178
166
  </a>
179
167
  </td>
180
168
  <td align="center" valign="middle">
181
- <a href="https://www.firesticktricks.com/" target="_blank">
182
- <img width="148px" src="https://raw.githubusercontent.com/vuejs/vuejs.org/master/themes/vue/source/images/firestick_tricks.png">
169
+ <a href="http://en.shopware.com/" target="_blank">
170
+ <img width="148px" src="https://raw.githubusercontent.com/vuejs/vuejs.org/master/themes/vue/source/images/shopware_ag.png">
183
171
  </a>
184
172
  </td>
185
173
  <td align="center" valign="middle">
186
- <a href="https://github.com/marcus-hiles" target="_blank">
187
- <img width="148px" src="https://raw.githubusercontent.com/vuejs/vuejs.org/master/themes/vue/source/images/marcus_hiles.png">
174
+ <a href="https://www.vpnranks.com/" target="_blank">
175
+ <img width="148px" src="https://raw.githubusercontent.com/vuejs/vuejs.org/master/themes/vue/source/images/vpnranks.png">
188
176
  </a>
189
177
  </td>
190
178
  <td align="center" valign="middle">
191
- <a href="https://intygrate.com/" target="_blank">
192
- <img width="148px" src="https://raw.githubusercontent.com/vuejs/vuejs.org/master/themes/vue/source/images/intygrate.png">
179
+ <a href="https://www.simplyswitch.com/" target="_blank">
180
+ <img width="148px" src="https://raw.githubusercontent.com/vuejs/vuejs.org/master/themes/vue/source/images/energy_comparison.png">
193
181
  </a>
194
182
  </td>
195
183
  </tr><tr></tr>
196
184
  <tr>
197
185
  <td align="center" valign="middle">
198
- <a href="https://isleofcode.com/" target="_blank">
199
- <img width="148px" src="https://raw.githubusercontent.com/vuejs/vuejs.org/master/themes/vue/source/images/isle_of_code.png">
186
+ <a href="https://www.bacancytechnology.com" target="_blank">
187
+ <img width="148px" src="https://raw.githubusercontent.com/vuejs/vuejs.org/master/themes/vue/source/images/bacancy_technology.png">
200
188
  </a>
201
189
  </td>
202
190
  <td align="center" valign="middle">
203
- <a href="https://yakaz.com/" target="_blank">
204
- <img width="148px" src="https://raw.githubusercontent.com/vuejs/vuejs.org/master/themes/vue/source/images/yakaz.png">
191
+ <a href="https://www.bestvpn.co/" target="_blank">
192
+ <img width="148px" src="https://raw.githubusercontent.com/vuejs/vuejs.org/master/themes/vue/source/images/bestvpn_co.png">
205
193
  </a>
206
194
  </td>
207
195
  <td align="center" valign="middle">
208
- <a href="https://passionatepeople.io/" target="_blank">
209
- <img width="148px" src="https://raw.githubusercontent.com/vuejs/vuejs.org/master/themes/vue/source/images/passionate_people.png">
196
+ <a href="https://www.y8.com/" target="_blank">
197
+ <img width="148px" src="https://raw.githubusercontent.com/vuejs/vuejs.org/master/themes/vue/source/images/y8.png">
210
198
  </a>
211
199
  </td>
212
200
  <td align="center" valign="middle">
213
- <a href="https://www.bestvpn.co/" target="_blank">
214
- <img width="148px" src="https://raw.githubusercontent.com/vuejs/vuejs.org/master/themes/vue/source/images/bestvpn_co.png">
201
+ <a href="https://js.devexpress.com/" target="_blank">
202
+ <img width="148px" src="https://raw.githubusercontent.com/vuejs/vuejs.org/master/themes/vue/source/images/devexpress.png">
215
203
  </a>
216
204
  </td>
217
205
  <td align="center" valign="middle">
218
- <a href="http://en.shopware.com/" target="_blank">
219
- <img width="148px" src="https://raw.githubusercontent.com/vuejs/vuejs.org/master/themes/vue/source/images/shopware_ag.svg">
206
+ <a href="https://fastcoding.jp/javascript/ " target="_blank">
207
+ <img width="148px" src="https://raw.githubusercontent.com/vuejs/vuejs.org/master/themes/vue/source/images/fastcoding_inc.svg">
208
+ </a>
209
+ </td>
210
+ <td align="center" valign="middle">
211
+ <a href="https://usave.co.uk/utilities/broadband" target="_blank">
212
+ <img width="148px" src="https://raw.githubusercontent.com/vuejs/vuejs.org/master/themes/vue/source/images/usave.png">
213
+ </a>
214
+ </td>
215
+ </tr><tr></tr>
216
+ <tr>
217
+ <td align="center" valign="middle">
218
+ <a href="https://www.dailynow.co/" target="_blank">
219
+ <img width="148px" src="https://raw.githubusercontent.com/vuejs/vuejs.org/master/themes/vue/source/images/daily.png">
220
+ </a>
221
+ </td>
222
+ <td align="center" valign="middle">
223
+ <a href="https://storekit.com" target="_blank">
224
+ <img width="148px" src="https://raw.githubusercontent.com/vuejs/vuejs.org/master/themes/vue/source/images/storekit.png">
225
+ </a>
226
+ </td>
227
+ <td align="center" valign="middle">
228
+ <a href="http://www.pullrequest.com" target="_blank">
229
+ <img width="148px" src="https://raw.githubusercontent.com/vuejs/vuejs.org/master/themes/vue/source/images/pullrequest.svg">
230
+ </a>
231
+ </td>
232
+ <td align="center" valign="middle">
233
+ <a href="https://unicorn.io/" target="_blank">
234
+ <img width="148px" src="https://raw.githubusercontent.com/vuejs/vuejs.org/master/themes/vue/source/images/unicorn_io.svg">
235
+ </a>
236
+ </td>
237
+ <td align="center" valign="middle">
238
+ <a href="https://thepiratebayproxylist.se" target="_blank">
239
+ <img width="148px" src="https://raw.githubusercontent.com/vuejs/vuejs.org/master/themes/vue/source/images/piratebayproxy.png">
240
+ </a>
241
+ </td>
242
+ <td align="center" valign="middle">
243
+ <a href="https://www.programmers.io" target="_blank">
244
+ <img width="148px" src="https://raw.githubusercontent.com/vuejs/vuejs.org/master/themes/vue/source/images/programmers_io.png">
220
245
  </a>
221
246
  </td>
222
247
  </tr><tr></tr>
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Vue.js v2.6.10
2
+ * Vue.js v2.6.11
3
3
  * (c) 2014-2019 Evan You
4
4
  * Released under the MIT License.
5
5
  */
@@ -1965,7 +1965,7 @@ if (typeof Promise !== 'undefined' && isNative(Promise)) {
1965
1965
  isUsingMicroTask = true;
1966
1966
  } else if (typeof setImmediate !== 'undefined' && isNative(setImmediate)) {
1967
1967
  // Fallback to setImmediate.
1968
- // Techinically it leverages the (macro) task queue,
1968
+ // Technically it leverages the (macro) task queue,
1969
1969
  // but it is still a better choice than setTimeout.
1970
1970
  timerFunc = function () {
1971
1971
  setImmediate(flushCallbacks);
@@ -2054,7 +2054,7 @@ var initProxy;
2054
2054
  warn(
2055
2055
  "Property \"" + key + "\" must be accessed with \"$data." + key + "\" because " +
2056
2056
  'properties starting with "$" or "_" are not proxied in the Vue instance to ' +
2057
- 'prevent conflicts with Vue internals' +
2057
+ 'prevent conflicts with Vue internals. ' +
2058
2058
  'See: https://vuejs.org/v2/api/#data',
2059
2059
  target
2060
2060
  );
@@ -2914,7 +2914,7 @@ function bindDynamicKeys (baseObj, values) {
2914
2914
  if (typeof key === 'string' && key) {
2915
2915
  baseObj[values[i]] = values[i + 1];
2916
2916
  } else if (key !== '' && key !== null) {
2917
- // null is a speical value for explicitly removing a binding
2917
+ // null is a special value for explicitly removing a binding
2918
2918
  warn(
2919
2919
  ("Invalid value for dynamic directive argument (expected string or null): " + key),
2920
2920
  this
@@ -3409,6 +3409,12 @@ function _createElement (
3409
3409
  ns = (context.$vnode && context.$vnode.ns) || config.getTagNamespace(tag);
3410
3410
  if (config.isReservedTag(tag)) {
3411
3411
  // platform built-in elements
3412
+ if (isDef(data) && isDef(data.nativeOn)) {
3413
+ warn(
3414
+ ("The .native modifier for v-on is only valid on components but it was used on <" + tag + ">."),
3415
+ context
3416
+ );
3417
+ }
3412
3418
  vnode = new VNode(
3413
3419
  config.parsePlatformTagName(tag), data, children,
3414
3420
  undefined, undefined, context
@@ -3534,7 +3540,7 @@ function renderMixin (Vue) {
3534
3540
  // render self
3535
3541
  var vnode;
3536
3542
  try {
3537
- // There's no need to maintain a stack becaues all render fns are called
3543
+ // There's no need to maintain a stack because all render fns are called
3538
3544
  // separately from one another. Nested component's render fns are called
3539
3545
  // when parent component is patched.
3540
3546
  currentRenderingInstance = vm;
@@ -5433,7 +5439,7 @@ Object.defineProperty(Vue, 'FunctionalRenderContext', {
5433
5439
  value: FunctionalRenderContext
5434
5440
  });
5435
5441
 
5436
- Vue.version = '2.6.10';
5442
+ Vue.version = '2.6.11';
5437
5443
 
5438
5444
  /* */
5439
5445
 
@@ -6106,7 +6112,7 @@ function createPatchFunction (backend) {
6106
6112
  }
6107
6113
  }
6108
6114
 
6109
- function removeVnodes (parentElm, vnodes, startIdx, endIdx) {
6115
+ function removeVnodes (vnodes, startIdx, endIdx) {
6110
6116
  for (; startIdx <= endIdx; ++startIdx) {
6111
6117
  var ch = vnodes[startIdx];
6112
6118
  if (isDef(ch)) {
@@ -6217,7 +6223,7 @@ function createPatchFunction (backend) {
6217
6223
  refElm = isUndef(newCh[newEndIdx + 1]) ? null : newCh[newEndIdx + 1].elm;
6218
6224
  addVnodes(parentElm, refElm, newCh, newStartIdx, newEndIdx, insertedVnodeQueue);
6219
6225
  } else if (newStartIdx > newEndIdx) {
6220
- removeVnodes(parentElm, oldCh, oldStartIdx, oldEndIdx);
6226
+ removeVnodes(oldCh, oldStartIdx, oldEndIdx);
6221
6227
  }
6222
6228
  }
6223
6229
 
@@ -6309,7 +6315,7 @@ function createPatchFunction (backend) {
6309
6315
  if (isDef(oldVnode.text)) { nodeOps.setTextContent(elm, ''); }
6310
6316
  addVnodes(elm, null, ch, 0, ch.length - 1, insertedVnodeQueue);
6311
6317
  } else if (isDef(oldCh)) {
6312
- removeVnodes(elm, oldCh, 0, oldCh.length - 1);
6318
+ removeVnodes(oldCh, 0, oldCh.length - 1);
6313
6319
  } else if (isDef(oldVnode.text)) {
6314
6320
  nodeOps.setTextContent(elm, '');
6315
6321
  }
@@ -6538,7 +6544,7 @@ function createPatchFunction (backend) {
6538
6544
 
6539
6545
  // destroy old node
6540
6546
  if (isDef(parentElm)) {
6541
- removeVnodes(parentElm, [oldVnode], 0, 0);
6547
+ removeVnodes([oldVnode], 0, 0);
6542
6548
  } else if (isDef(oldVnode.tag)) {
6543
6549
  invokeDestroyHook(oldVnode);
6544
6550
  }
@@ -9244,7 +9250,7 @@ var startTagOpen = new RegExp(("^<" + qnameCapture));
9244
9250
  var startTagClose = /^\s*(\/?)>/;
9245
9251
  var endTag = new RegExp(("^<\\/" + qnameCapture + "[^>]*>"));
9246
9252
  var doctype = /^<!DOCTYPE [^>]+>/i;
9247
- // #7298: escape - to avoid being pased as HTML comment when inlined in page
9253
+ // #7298: escape - to avoid being passed as HTML comment when inlined in page
9248
9254
  var comment = /^<!\--/;
9249
9255
  var conditionalComment = /^<!\[/;
9250
9256
 
@@ -9529,7 +9535,7 @@ function parseHTML (html, options) {
9529
9535
  /* */
9530
9536
 
9531
9537
  var onRE = /^@|^v-on:/;
9532
- var dirRE = /^v-|^@|^:/;
9538
+ var dirRE = /^v-|^@|^:|^#/;
9533
9539
  var forAliasRE = /([\s\S]*?)\s+(?:in|of)\s+([\s\S]*)/;
9534
9540
  var forIteratorRE = /,([^,\}\]]*)(?:,([^,\}\]]*))?$/;
9535
9541
  var stripParensRE = /^\(|\)$/g;
@@ -10153,7 +10159,7 @@ function processSlotContent (el) {
10153
10159
  if (el.parent && !maybeComponent(el.parent)) {
10154
10160
  warn$2(
10155
10161
  "<template v-slot> can only appear at the root level inside " +
10156
- "the receiving the component",
10162
+ "the receiving component",
10157
10163
  el
10158
10164
  );
10159
10165
  }
@@ -10716,7 +10722,7 @@ function isDirectChildOfTemplateFor (node) {
10716
10722
 
10717
10723
  /* */
10718
10724
 
10719
- var fnExpRE = /^([\w$_]+|\([^)]*?\))\s*=>|^function\s*(?:[\w$]+)?\s*\(/;
10725
+ var fnExpRE = /^([\w$_]+|\([^)]*?\))\s*=>|^function(?:\s+[\w$]+)?\s*\(/;
10720
10726
  var fnInvokeRE = /\([^)]*?\);*$/;
10721
10727
  var simplePathRE = /^[A-Za-z_$][\w$]*(?:\.[A-Za-z_$][\w$]*|\['[^']*?']|\["[^"]*?"]|\[\d+]|\[[A-Za-z_$][\w$]*])*$/;
10722
10728
 
@@ -11485,6 +11491,8 @@ function checkNode (node, warn) {
11485
11491
  var range = node.rawAttrsMap[name];
11486
11492
  if (name === 'v-for') {
11487
11493
  checkFor(node, ("v-for=\"" + value + "\""), warn, range);
11494
+ } else if (name === 'v-slot' || name[0] === '#') {
11495
+ checkFunctionParameterExpression(value, (name + "=\"" + value + "\""), warn, range);
11488
11496
  } else if (onRE.test(name)) {
11489
11497
  checkEvent(value, (name + "=\"" + value + "\""), warn, range);
11490
11498
  } else {
@@ -11504,9 +11512,9 @@ function checkNode (node, warn) {
11504
11512
  }
11505
11513
 
11506
11514
  function checkEvent (exp, text, warn, range) {
11507
- var stipped = exp.replace(stripStringRE, '');
11508
- var keywordMatch = stipped.match(unaryOperatorsRE);
11509
- if (keywordMatch && stipped.charAt(keywordMatch.index - 1) !== '$') {
11515
+ var stripped = exp.replace(stripStringRE, '');
11516
+ var keywordMatch = stripped.match(unaryOperatorsRE);
11517
+ if (keywordMatch && stripped.charAt(keywordMatch.index - 1) !== '$') {
11510
11518
  warn(
11511
11519
  "avoid using JavaScript unary operator as property name: " +
11512
11520
  "\"" + (keywordMatch[0]) + "\" in expression " + (text.trim()),
@@ -11561,6 +11569,19 @@ function checkExpression (exp, text, warn, range) {
11561
11569
  }
11562
11570
  }
11563
11571
 
11572
+ function checkFunctionParameterExpression (exp, text, warn, range) {
11573
+ try {
11574
+ new Function(exp, '');
11575
+ } catch (e) {
11576
+ warn(
11577
+ "invalid function parameter expression: " + (e.message) + " in\n\n" +
11578
+ " " + exp + "\n\n" +
11579
+ " Raw expression: " + (text.trim()) + "\n",
11580
+ range
11581
+ );
11582
+ }
11583
+ }
11584
+
11564
11585
  /* */
11565
11586
 
11566
11587
  var range = 2;