vue 2.5.17-beta.0 → 2.5.19

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.
Files changed (82) hide show
  1. package/README.md +87 -49
  2. package/dist/vue.common.dev.js +11049 -0
  3. package/dist/vue.common.js +499 -402
  4. package/dist/vue.common.prod.js +6 -0
  5. package/dist/vue.esm.browser.min.js +6 -0
  6. package/dist/vue.esm.js +499 -402
  7. package/dist/vue.js +9830 -9749
  8. package/dist/vue.min.js +2 -2
  9. package/dist/vue.runtime.common.dev.js +8084 -0
  10. package/dist/vue.runtime.common.js +408 -357
  11. package/dist/vue.runtime.common.prod.js +6 -0
  12. package/dist/vue.runtime.esm.js +408 -357
  13. package/dist/vue.runtime.js +6991 -6950
  14. package/dist/vue.runtime.min.js +2 -2
  15. package/package.json +25 -24
  16. package/src/compiler/codegen/events.js +5 -4
  17. package/src/compiler/codegen/index.js +26 -8
  18. package/src/compiler/helpers.js +12 -12
  19. package/src/compiler/parser/html-parser.js +2 -16
  20. package/src/compiler/parser/index.js +24 -4
  21. package/src/compiler/parser/text-parser.js +1 -1
  22. package/src/core/config.js +9 -0
  23. package/src/core/instance/events.js +15 -9
  24. package/src/core/instance/lifecycle.js +10 -3
  25. package/src/core/instance/proxy.js +16 -3
  26. package/src/core/instance/render-helpers/bind-object-props.js +5 -3
  27. package/src/core/instance/render-helpers/render-slot.js +1 -13
  28. package/src/core/instance/render.js +5 -17
  29. package/src/core/instance/state.js +28 -15
  30. package/src/core/observer/dep.js +12 -4
  31. package/src/core/observer/index.js +12 -9
  32. package/src/core/observer/scheduler.js +6 -1
  33. package/src/core/observer/watcher.js +40 -66
  34. package/src/core/util/env.js +1 -1
  35. package/src/core/util/next-tick.js +5 -3
  36. package/src/core/util/options.js +19 -8
  37. package/src/core/util/props.js +42 -3
  38. package/src/core/vdom/create-component.js +11 -3
  39. package/src/core/vdom/create-element.js +1 -1
  40. package/src/core/vdom/create-functional-component.js +6 -3
  41. package/src/core/vdom/helpers/resolve-async-component.js +8 -4
  42. package/src/core/vdom/helpers/update-listeners.js +12 -2
  43. package/src/core/vdom/patch.js +23 -8
  44. package/src/core/vdom/vnode.js +5 -1
  45. package/src/platforms/web/runtime/class-util.js +4 -2
  46. package/src/platforms/web/runtime/components/transition-group.js +8 -2
  47. package/src/platforms/web/runtime/components/transition.js +6 -2
  48. package/src/platforms/web/runtime/modules/attrs.js +1 -1
  49. package/src/platforms/web/runtime/modules/events.js +2 -4
  50. package/src/platforms/web/runtime/modules/transition.js +1 -1
  51. package/src/platforms/web/runtime/transition-util.js +10 -5
  52. package/src/platforms/web/server/modules/attrs.js +5 -0
  53. package/src/platforms/web/server/util.js +5 -0
  54. package/src/platforms/web/util/style.js +1 -1
  55. package/src/platforms/weex/compiler/directives/model.js +1 -2
  56. package/src/platforms/weex/compiler/modules/append.js +1 -1
  57. package/src/platforms/weex/compiler/modules/props.js +1 -1
  58. package/src/platforms/weex/compiler/modules/recycle-list/component-root.js +1 -4
  59. package/src/platforms/weex/compiler/modules/recycle-list/index.js +5 -5
  60. package/src/platforms/weex/compiler/modules/recycle-list/text.js +1 -1
  61. package/src/platforms/weex/compiler/modules/recycle-list/v-bind.js +1 -1
  62. package/src/platforms/weex/compiler/modules/recycle-list/v-on.js +1 -1
  63. package/src/platforms/weex/compiler/modules/recycle-list/v-once.js +1 -1
  64. package/src/platforms/weex/runtime/modules/class.js +19 -20
  65. package/src/platforms/weex/runtime/modules/events.js +11 -14
  66. package/src/platforms/weex/runtime/modules/style.js +1 -1
  67. package/src/platforms/weex/runtime/modules/transition.js +2 -2
  68. package/src/platforms/weex/util/element.js +5 -5
  69. package/src/server/optimizing-compiler/modules.js +1 -1
  70. package/src/server/optimizing-compiler/runtime-helpers.js +4 -1
  71. package/src/server/render-context.js +45 -45
  72. package/src/server/render.js +8 -5
  73. package/src/server/template-renderer/index.js +14 -11
  74. package/src/server/webpack-plugin/client.js +6 -11
  75. package/src/server/webpack-plugin/server.js +3 -3
  76. package/src/server/webpack-plugin/util.js +10 -0
  77. package/src/server/write.js +1 -1
  78. package/src/sfc/parser.js +1 -1
  79. package/src/shared/util.js +27 -16
  80. package/types/options.d.ts +26 -6
  81. package/types/vnode.d.ts +9 -8
  82. package/types/vue.d.ts +11 -10
package/README.md CHANGED
@@ -1,19 +1,19 @@
1
1
  <p align="center"><a href="https://vuejs.org" target="_blank" rel="noopener noreferrer"><img width="100" src="https://vuejs.org/images/logo.png" alt="Vue logo"></a></p>
2
2
 
3
3
  <p align="center">
4
- <a href="https://circleci.com/gh/vuejs/vue/tree/dev"><img src="https://img.shields.io/circleci/project/vuejs/vue/dev.svg" alt="Build Status"></a>
4
+ <a href="https://circleci.com/gh/vuejs/vue/tree/dev"><img src="https://img.shields.io/circleci/project/github/vuejs/vue/dev.svg" alt="Build Status"></a>
5
5
  <a href="https://codecov.io/github/vuejs/vue?branch=dev"><img src="https://img.shields.io/codecov/c/github/vuejs/vue/dev.svg" alt="Coverage Status"></a>
6
6
  <a href="https://npmcharts.com/compare/vue?minimal=true"><img src="https://img.shields.io/npm/dm/vue.svg" alt="Downloads"></a>
7
7
  <a href="https://www.npmjs.com/package/vue"><img src="https://img.shields.io/npm/v/vue.svg" alt="Version"></a>
8
8
  <a href="https://www.npmjs.com/package/vue"><img src="https://img.shields.io/npm/l/vue.svg" alt="License"></a>
9
9
  <a href="https://chat.vuejs.org/"><img src="https://img.shields.io/badge/chat-on%20discord-7289da.svg" alt="Chat"></a>
10
10
  <br>
11
- <a href="https://saucelabs.com/u/vuejs"><img src="https://saucelabs.com/browser-matrix/vuejs.svg" alt="Sauce Test Status"></a>
11
+ <a href="https://app.saucelabs.com/builds/50f8372d79f743a3b25fb6ca4851ca4c"><img src="https://app.saucelabs.com/buildstatus/vuejs" alt="Build Status"></a>
12
12
  </p>
13
13
 
14
14
  <h2 align="center">Supporting Vue.js</h2>
15
15
 
16
- Vue.js is an MIT-licensed open source project. It's an independent project with its ongoing development made possible entirely thanks to the support by these awesome [backers](https://github.com/vuejs/vue/blob/dev/BACKERS.md). If you'd like to join them, please consider:
16
+ Vue.js is an MIT-licensed open source project with its ongoing development made possible entirely by the support of these awesome [backers](https://github.com/vuejs/vue/blob/dev/BACKERS.md). If you'd like to join them, please consider:
17
17
 
18
18
  - [Become a backer or sponsor on Patreon](https://www.patreon.com/evanyou).
19
19
  - [Become a backer or sponsor on Open Collective](https://opencollective.com/vuejs).
@@ -25,63 +25,84 @@ Funds donated via Patreon go directly to support Evan You's full-time work on Vu
25
25
 
26
26
  <h3 align="center">Special Sponsors</h3>
27
27
  <!--special start-->
28
+
29
+ <p align="center">
30
+ <a href="https://stdlib.com/" target="_blank">
31
+ <img width="260px" src="https://raw.githubusercontent.com/vuejs/vuejs.org/master/themes/vue/source/images/stdlib.png">
32
+ </a>
33
+ </p>
34
+
35
+ <!--special end-->
36
+
37
+ <h3 align="center">Platinum Sponsors</h3>
38
+
39
+ <!--platinum start-->
28
40
  <table>
29
41
  <tbody>
30
42
  <tr>
31
43
  <td align="center" valign="middle">
32
- <a href="https://stdlib.com" target="_blank">
33
- <img width="222px" src="https://raw.githubusercontent.com/vuejs/vuejs.org/master/themes/vue/source/images/stdlib.png">
44
+ <a href="https://www.bitsrc.io/?utm_source=vue&utm_medium=vue&utm_campaign=vue&utm_term=vue&utm_content=vue" target="_blank">
45
+ <img width="222px" src="https://raw.githubusercontent.com/vuejs/vuejs.org/master/themes/vue/source/images/bit-wide.png">
34
46
  </a>
35
47
  </td>
36
48
  <td align="center" valign="middle">
37
- <a href="https://www.bitsrc.io/?utm_source=vue&utm_medium=vue&utm_campaign=vue&utm_term=vue&utm_content=vue" target="_blank">
38
- <img height="90px" src="https://raw.githubusercontent.com/vuejs/vuejs.org/master/themes/vue/source/images/bit-wide.png">
49
+ <a href="http://tooltwist.com/" target="_blank">
50
+ <img width="222px" src="https://raw.githubusercontent.com/vuejs/vuejs.org/master/themes/vue/source/images/tooltwist.png">
51
+ </a>
52
+ </td>
53
+ <td align="center" valign="middle">
54
+ <a href="https://vueschool.io/?utm_source=Vuejs.org&utm_medium=Banner&utm_campaign=Sponsored%20Banner&utm_content=V1" target="_blank">
55
+ <img width="222px" src="https://raw.githubusercontent.com/vuejs/vuejs.org/master/themes/vue/source/images/vueschool.png">
39
56
  </a>
40
57
  </td>
41
58
  <td align="center" valign="middle">
42
- <a href="https://xiaozhuanlan.com" target="_blank">
43
- <img width="222px" src="https://raw.githubusercontent.com/vuejs/cn.vuejs.org/master/themes/vue/source/images/xiaozhuanlan.png">
59
+ <a href="https://vehikl.com/" target="_blank">
60
+ <img width="222px" src="https://raw.githubusercontent.com/vuejs/vuejs.org/master/themes/vue/source/images/vehikl.png">
61
+ </a>
62
+ </td>
63
+ </tr><tr></tr>
64
+ <tr>
65
+ <td align="center" valign="middle">
66
+ <a href="https://www.nativescript.org/vue?utm_source=vue-js-org&utm_medium=website&utm_campaign=nativescript-awareness" target="_blank">
67
+ <img width="222px" src="https://raw.githubusercontent.com/vuejs/vuejs.org/master/themes/vue/source/images/nativescript.png">
44
68
  </a>
45
69
  </td>
46
70
  </tr><tr></tr>
47
71
  </tbody>
48
72
  </table>
49
- <!--special end-->
50
-
51
- <h3 align="center">Sponsors via Patreon</h3>
52
-
53
- <h4 align="center">Platinum</h4>
73
+ <!--platinum end-->
54
74
 
55
- <!--platinum start-->
75
+ <!--special-china start-->
76
+ <h3 align="center">Platinum Sponsors (China)</h3>
56
77
  <table>
57
78
  <tbody>
58
79
  <tr>
59
80
  <td align="center" valign="middle">
60
- <a href="http://tooltwist.com/" target="_blank">
61
- <img width="222px" src="https://raw.githubusercontent.com/vuejs/vuejs.org/master/themes/vue/source/images/tooltwist.png">
62
- </a>
63
- </td>
64
- <td align="center" valign="middle">
65
- <a href="https://vueschool.io/?utm_source=Vuejs.org&utm_medium=Banner&utm_campaign=Sponsored%20Banner&utm_content=V1" target="_blank">
66
- <img width="222px" src="https://raw.githubusercontent.com/vuejs/vuejs.org/master/themes/vue/source/images/vueschool.png">
81
+ <a href="https://studio.qcloud.coding.net/campaign/favorite-plugins/?utm_source=vue.js&utm_content=cs-logo" target="_blank">
82
+ <img width="177px" src="https://raw.githubusercontent.com/vuejs/vuejs.org/master/themes/vue/source/images/cloudstudio.png">
67
83
  </a>
68
84
  </td>
69
85
  <td align="center" valign="middle">
70
- <a href="https://www.datacamp.com/careers?utm_source=vuejs&utm_medium=sidebar" target="_blank">
71
- <img width="222px" src="https://raw.githubusercontent.com/vuejs/vuejs.org/master/themes/vue/source/images/datacamp.png">
86
+ <a href="http://www.dcloud.io/?hmsr=vuejsorg&hmpl=&hmcu=&hmkw=&hmci=" target="_blank">
87
+ <img width="177px" src="https://raw.githubusercontent.com/vuejs/vuejs.org/master/themes/vue/source/images/dcloud.gif">
72
88
  </a>
73
89
  </td>
74
90
  </tr><tr></tr>
75
91
  </tbody>
76
92
  </table>
77
- <!--platinum end-->
93
+ <!--special-china end-->
78
94
 
79
- <h4 align="center">Gold</h4>
95
+ <h3 align="center">Gold Sponsors</h4>
80
96
 
81
97
  <!--gold start-->
82
98
  <table>
83
99
  <tbody>
84
100
  <tr>
101
+ <td align="center" valign="middle">
102
+ <a href="https://www.vuemastery.com/" target="_blank">
103
+ <img width="148px" src="https://raw.githubusercontent.com/vuejs/vuejs.org/master/themes/vue/source/images/vuemastery.png">
104
+ </a>
105
+ </td>
85
106
  <td align="center" valign="middle">
86
107
  <a href="https://laravel.com" target="_blank">
87
108
  <img width="148px" src="https://raw.githubusercontent.com/vuejs/vuejs.org/master/themes/vue/source/images/laravel.png">
@@ -97,11 +118,6 @@ Funds donated via Patreon go directly to support Evan You's full-time work on Vu
97
118
  <img width="148px" src="https://raw.githubusercontent.com/vuejs/vuejs.org/master/themes/vue/source/images/chaitin.png">
98
119
  </a>
99
120
  </td>
100
- <td align="center" valign="middle">
101
- <a href="https://anymod.com" target="_blank">
102
- <img width="148px" src="https://raw.githubusercontent.com/vuejs/vuejs.org/master/themes/vue/source/images/anymod.png">
103
- </a>
104
- </td>
105
121
  <td align="center" valign="middle">
106
122
  <a href="https://www.frontenddeveloperlove.com/" target="_blank">
107
123
  <img width="148px" src="https://raw.githubusercontent.com/vuejs/vuejs.org/master/themes/vue/source/images/frontend-love.png">
@@ -124,11 +140,6 @@ Funds donated via Patreon go directly to support Evan You's full-time work on Vu
124
140
  <img width="148px" src="https://raw.githubusercontent.com/vuejs/vuejs.org/master/themes/vue/source/images/neds.png">
125
141
  </a>
126
142
  </td>
127
- <td align="center" valign="middle">
128
- <a href="https://hackr.io/tutorials/learn-vue-js" target="_blank">
129
- <img width="148px" src="https://raw.githubusercontent.com/vuejs/vuejs.org/master/themes/vue/source/images/hackr-io.png">
130
- </a>
131
- </td>
132
143
  <td align="center" valign="middle">
133
144
  <a href="https://icons8.com/" target="_blank">
134
145
  <img width="148px" src="https://raw.githubusercontent.com/vuejs/vuejs.org/master/themes/vue/source/images/icons8.png">
@@ -140,30 +151,57 @@ Funds donated via Patreon go directly to support Evan You's full-time work on Vu
140
151
  </a>
141
152
  </td>
142
153
  <td align="center" valign="middle">
143
- <a href="https://leanpub.com/vuejs2" target="_blank">
144
- <img width="148px" src="https://raw.githubusercontent.com/vuejs/vuejs.org/master/themes/vue/source/images/tmvuejs2.png">
154
+ <a href="https://teamextension.io/" target="_blank">
155
+ <img width="148px" src="https://raw.githubusercontent.com/vuejs/vuejs.org/master/themes/vue/source/images/teamextension.png">
156
+ </a>
157
+ </td>
158
+ <td align="center" valign="middle">
159
+ <a href="http://aaha.co/" target="_blank">
160
+ <img width="148px" src="https://raw.githubusercontent.com/vuejs/vuejs.org/master/themes/vue/source/images/aaha.png">
145
161
  </a>
146
162
  </td>
147
163
  </tr><tr></tr>
148
164
  <tr>
149
165
  <td align="center" valign="middle">
150
- <a href="https://www.bmqb.com/jobs" target="_blank">
151
- <img width="148px" src="https://raw.githubusercontent.com/vuejs/vuejs.org/master/themes/vue/source/images/bmqb.png">
166
+ <a href="https://www.valuecoders.com" target="_blank">
167
+ <img width="148px" src="https://raw.githubusercontent.com/vuejs/vuejs.org/master/themes/vue/source/images/valuecoders.png">
152
168
  </a>
153
169
  </td>
154
170
  <td align="center" valign="middle">
155
- <a href="https://codepilot.ai" target="_blank">
156
- <img width="148px" src="https://raw.githubusercontent.com/vuejs/vuejs.org/master/themes/vue/source/images/codepilot.png">
171
+ <a href="https://tidelift.com/subscription/npm/vue" target="_blank">
172
+ <img width="148px" src="https://raw.githubusercontent.com/vuejs/vuejs.org/master/themes/vue/source/images/tidelift.png">
157
173
  </a>
158
174
  </td>
159
175
  <td align="center" valign="middle">
160
- <a href="https://teamextension.io/" target="_blank">
161
- <img width="148px" src="https://raw.githubusercontent.com/vuejs/vuejs.org/master/themes/vue/source/images/teamextension.png">
176
+ <a href="https://webdock.io/en" target="_blank">
177
+ <img width="148px" src="https://raw.githubusercontent.com/vuejs/vuejs.org/master/themes/vue/source/images/webdock.png">
178
+ </a>
179
+ </td>
180
+ <td align="center" valign="middle">
181
+ <a href="https://syncfusion.com/products/vue" target="_blank">
182
+ <img width="148px" src="https://raw.githubusercontent.com/vuejs/vuejs.org/master/themes/vue/source/images/syncfusion.png">
183
+ </a>
184
+ </td>
185
+ <td align="center" valign="middle">
186
+ <a href="https://opteo.com/vue" target="_blank">
187
+ <img width="148px" src="https://raw.githubusercontent.com/vuejs/vuejs.org/master/themes/vue/source/images/opteo.png">
188
+ </a>
189
+ </td>
190
+ <td align="center" valign="middle">
191
+ <a href="https://courses.wilderminds.com/p/vue-js-by-example" target="_blank">
192
+ <img width="148px" src="https://raw.githubusercontent.com/vuejs/vuejs.org/master/themes/vue/source/images/wilderminds.png">
193
+ </a>
194
+ </td>
195
+ </tr><tr></tr>
196
+ <tr>
197
+ <td align="center" valign="middle">
198
+ <a href="https://devsquad.com/" target="_blank">
199
+ <img width="148px" src="https://raw.githubusercontent.com/vuejs/vuejs.org/master/themes/vue/source/images/devsquad.png">
162
200
  </a>
163
201
  </td>
164
202
  <td align="center" valign="middle">
165
- <a href="https://jsguru.io/" target="_blank">
166
- <img width="148px" src="https://raw.githubusercontent.com/vuejs/vuejs.org/master/themes/vue/source/images/jsguru.png">
203
+ <a href="https://www.inkoop.in/" target="_blank">
204
+ <img width="148px" src="https://raw.githubusercontent.com/vuejs/vuejs.org/master/themes/vue/source/images/inkoop.png">
167
205
  </a>
168
206
  </td>
169
207
  </tr><tr></tr>
@@ -220,7 +258,7 @@ Vue.js supports all browsers that are [ES5-compliant](http://kangax.github.io/co
220
258
 
221
259
  [vue-router-status]: https://img.shields.io/npm/v/vue-router.svg
222
260
  [vuex-status]: https://img.shields.io/npm/v/vuex.svg
223
- [vue-cli-status]: https://img.shields.io/npm/v/vue-cli.svg
261
+ [vue-cli-status]: https://img.shields.io/npm/v/@vue/cli.svg
224
262
  [vue-loader-status]: https://img.shields.io/npm/v/vue-loader.svg
225
263
  [vue-server-renderer-status]: https://img.shields.io/npm/v/vue-server-renderer.svg
226
264
  [vue-class-component-status]: https://img.shields.io/npm/v/vue-class-component.svg
@@ -229,7 +267,7 @@ Vue.js supports all browsers that are [ES5-compliant](http://kangax.github.io/co
229
267
 
230
268
  [vue-router-package]: https://npmjs.com/package/vue-router
231
269
  [vuex-package]: https://npmjs.com/package/vuex
232
- [vue-cli-package]: https://npmjs.com/package/vue-cli
270
+ [vue-cli-package]: https://npmjs.com/package/@vue/cli
233
271
  [vue-loader-package]: https://npmjs.com/package/vue-loader
234
272
  [vue-server-renderer-package]: https://npmjs.com/package/vue-server-renderer
235
273
  [vue-class-component-package]: https://npmjs.com/package/vue-class-component
@@ -242,7 +280,7 @@ To check out [live examples](https://vuejs.org/v2/examples/) and docs, visit [vu
242
280
 
243
281
  ## Questions
244
282
 
245
- For questions and support please use the [the official forum](http://forum.vuejs.org) or [community chat](https://chat.vuejs.org/). The issue list of this repo is **exclusively** for bug reports and feature requests.
283
+ For questions and support please use [the official forum](http://forum.vuejs.org) or [community chat](https://chat.vuejs.org/). The issue list of this repo is **exclusively** for bug reports and feature requests.
246
284
 
247
285
  ## Issues
248
286