diff --git a/.github/CONTRIBUTING.md b/.github/CONTRIBUTING.md
index 0c03779a886..5368b5481bc 100644
--- a/.github/CONTRIBUTING.md
+++ b/.github/CONTRIBUTING.md
@@ -124,15 +124,7 @@ The default test script will do the following: lint with ESLint -> type check wi
## Financial Contribution
-As a pure community-driven project without major corporate backing, we also welcome financial contributions via Patreon and OpenCollective.
-
-- [Become a backer or sponsor on Patreon](https://www.patreon.com/evanyou)
-- [Become a backer or sponsor on OpenCollective](https://opencollective.com/vuejs)
-- [One-time donation via PayPal or crypto-currencies](https://vuejs.org/support-vuejs/#One-time-Donations)
-
-### What's the difference between Patreon and OpenCollective funding?
-
-Funds donated via Patreon go directly to support Evan You's full-time work on Vue.js. Funds donated via OpenCollective are managed with transparent expenses and will be used for compensating work and expenses for core team members or sponsoring community events. Your name/logo will receive proper recognition and exposure by donating on either platform.
+As a pure community-driven project without major corporate backing, we also welcome financial contributions via GitHub Sponsors and OpenCollective. Please consult the [Sponsor Page](https://vuejs.org/sponsor/) for more details.
## Credits
diff --git a/BACKERS.md b/BACKERS.md
index 81dc72dba1b..fa66d206698 100644
--- a/BACKERS.md
+++ b/BACKERS.md
@@ -1,524 +1,9 @@
Sponsors & Backers
-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:
-
-- [Become a backer or sponsor on Patreon](https://www.patreon.com/evanyou).
-- [Become a backer or sponsor on OpenCollective](https://opencollective.com/vuejs).
-- [One-time donation via PayPal or crypto-currencies.](https://vuejs.org/support-vuejs/#One-time-Donations)
-
-#### What's the difference between Patreon and OpenCollective?
-
-Funds donated via Patreon go directly to support Evan You's full-time work on Vue.js. Funds donated via OpenCollective are managed with transparent expenses and will be used for compensating work and expenses for core team members or sponsoring community events. Your name/logo will receive proper recognition and exposure by donating on either platform.
-
-
-
-Special Sponsors
-
-
+Vue.js is an MIT-licensed open source project with its ongoing development made possible entirely by the support of the awesome sponsors and backers listed in this file. If you'd like to join them, please consider [ sponsor Vue's development](https://vuejs.org/sponsor/).
-
-
+
+
-
-
-
-Platinum via Patreon
-
-
-
-
-
-
-Platinum Sponsors (China)
-
-
-
-Platinum via OpenCollective
-
-
-
-
-Gold via Patreon
-
-
-
-
-
-Gold via OpenCollective
-
-
-
-
-
-
-
-
-
-
-
-
-
-Silver via Patreon
-
-- Matt Mullenweg
-
-
-
-
-
-Silver via OpenCollective
-
-
-
-
-
-
-
-
-
-
-
-
-Bronze via Patreon
-
-
-
-
-
-Bronze via OpenCollective
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-Generous Backers via Patreon ($50+)
-
-
-
-- Yoshitaka M
-- Peter Imburg
-- Johnny Ray Austin
-- errorrik
-- Wasim Khamlichi
-
-
-Backers via Patreon
-
-
-
-- Jeffrey Rennie
-- Keisuke Kita
-- Роман Латкин
-- Alex Riviere
-- Fontis
-- Jack
-- Nick Carr
-- Traversy Media
-- Pierre Baron
-- Donghai Gai
-- Aleksander Figiel
-- Dennis Zanetti
-- wickedwei
-- Sunny Yuen
-- Jules
-- Zeth Odderskov
-- Thomas Wiedemann
-- Nobuhide Esaki
-- Roy Segall
-- Allan McKernan
-- Diana Bergholz
-- Riki Fridrich
-- Alfonso Herrera
-- Bichinger Software & Consulting
-- username
-- Pierre Lebrun
-- Peter Matkovsky
-- 龙腾道
-- Nick Dandakis
-- Yusuke Kawabata
-- Shawn Wildermuth
-- Meinhard Dam
-- Daniel Mattingley
-- Matt Sencenbaugh
-- Jaeyoung Lee
-- David Kaplan
-- David Ang
-- Wakana Seki
-- Jere Sjöroos
-- Donald Fischer
-- Eric
-- tyler madsen
-- Joe Gregory
-- Masahiro Tanaka
-- Tyler
-- Jim Raden
-- Haim Yulzari
-- Asaf Yishai
-- Jon Hobbs-Smith
-- Pierre Vanhulst
-- Zoran Knezevic
-- Bernhard E. Reiter
-- Guy Gavergun
-- Matt Jones
-- Niannian Modisette
-- Matsumoto Takamasa
-- Barbara Liau
-- Wen-Tien Chang
-- Stephen Hartley
-- Victor Tolbert
-- Lars Andreas Ness
-- Benjamin Listwon
-- Elon Hung
-
-
-Backers via OpenCollective
-
-
diff --git a/README.md b/README.md
index d501a63099b..ed68ab8bbbc 100644
--- a/README.md
+++ b/README.md
@@ -7,316 +7,21 @@
-
-
-Supporting Vue.js
+## This repo is for Vue 2
-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:
+You are looking at the repository for Vue 2. The repo for Vue 3 is [vuejs/core](https://github.com/vuejs/core).
-- [Become a backer or sponsor on Patreon](https://www.patreon.com/evanyou).
-- [Become a backer or sponsor on Open Collective](https://opencollective.com/vuejs).
-- [One-time donation via PayPal or crypto-currencies](https://vuejs.org/support-vuejs/#One-time-Donations).
+## Sponsors
-#### What's the difference between Patreon and OpenCollective?
-
-Funds donated via Patreon go directly to support Evan You's full-time work on Vue.js. Funds donated via OpenCollective are managed with transparent expenses and will be used for compensating work and expenses for core team members or sponsoring community events. Your name/logo will receive proper recognition and exposure by donating on either platform.
-
-Special Sponsors
-
+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/core/blob/main/BACKERS.md). If you'd like to join them, please consider [ sponsor Vue's development](https://vuejs.org/sponsor/).
-
-
+
+
-
-
-
-Platinum Sponsors
-
-
-
-
-
-
-Platinum Sponsors (China)
-
-
-
-Gold Sponsors
-
-
-
-
-
-
-
-Platinum
-
-
-
-
-Gold
-
-
-
-
-
-
-
-
-
-
-
---
diff --git a/examples/todomvc/app.js b/examples/todomvc/app.js
index f8bfeb1ea61..7a1a65486a3 100644
--- a/examples/todomvc/app.js
+++ b/examples/todomvc/app.js
@@ -55,7 +55,7 @@ var app = new Vue({
},
// computed properties
- // https://vuejs.org/guide/computed.html
+ // https://v2.vuejs.org/v2/guide/computed.html
computed: {
filteredTodos: function () {
return filters[this.visibility](this.todos)
@@ -129,7 +129,7 @@ var app = new Vue({
// a custom directive to wait for the DOM to be updated
// before focusing on the input field.
- // https://vuejs.org/guide/custom-directive.html
+ // https://v2.vuejs.org/v2/guide/custom-directive.html
directives: {
'todo-focus': function (el, binding) {
if (binding.value) {
diff --git a/packages/vue-server-renderer/build.dev.js b/packages/vue-server-renderer/build.dev.js
index 8235936b2bd..f4a575aba89 100644
--- a/packages/vue-server-renderer/build.dev.js
+++ b/packages/vue-server-renderer/build.dev.js
@@ -5157,7 +5157,7 @@ function genFor (
state.warn(
"<" + (el.tag) + " v-for=\"" + alias + " in " + exp + "\">: component lists rendered with " +
"v-for should have explicit keys. " +
- "See https://vuejs.org/guide/list.html#key for more info.",
+ "See https://v2.vuejs.org/v2/guide/list.html#Maintaining-State for more info.",
el.rawAttrsMap['v-for'],
true /* tip */
);
diff --git a/packages/vue-template-compiler/browser.js b/packages/vue-template-compiler/browser.js
index 92d3b5d913a..6ffad539827 100644
--- a/packages/vue-template-compiler/browser.js
+++ b/packages/vue-template-compiler/browser.js
@@ -4444,7 +4444,7 @@
state.warn(
"<" + (el.tag) + " v-for=\"" + alias + " in " + exp + "\">: component lists rendered with " +
"v-for should have explicit keys. " +
- "See https://vuejs.org/guide/list.html#key for more info.",
+ "See https://v2.vuejs.org/v2/guide/list.html#Maintaining-State for more info.",
el.rawAttrsMap['v-for'],
true /* tip */
);
diff --git a/packages/weex-template-compiler/build.js b/packages/weex-template-compiler/build.js
index 7739a4b5c74..ba0e498cbc6 100644
--- a/packages/weex-template-compiler/build.js
+++ b/packages/weex-template-compiler/build.js
@@ -1516,7 +1516,7 @@ function parse (
}
},
comment: function comment (text, start, end) {
- // adding anyting as a sibling to the root node is forbidden
+ // adding anything as a sibling to the root node is forbidden
// comments should still be allowed, but ignored
if (currentParent) {
var child = {
@@ -3489,7 +3489,7 @@ function genFor (
state.warn(
"<" + (el.tag) + " v-for=\"" + alias + " in " + exp + "\">: component lists rendered with " +
"v-for should have explicit keys. " +
- "See https://vuejs.org/guide/list.html#key for more info.",
+ "See https://v2.vuejs.org/v2/guide/list.html#Maintaining-State for more info.",
el.rawAttrsMap['v-for'],
true /* tip */
);
diff --git a/packages/weex-vue-framework/factory.js b/packages/weex-vue-framework/factory.js
index 4cb547b5250..6fad6da8755 100644
--- a/packages/weex-vue-framework/factory.js
+++ b/packages/weex-vue-framework/factory.js
@@ -2010,7 +2010,7 @@ if (process.env.NODE_ENV !== 'production') {
'referenced during render. Make sure that this property is reactive, ' +
'either in the data option, or for class-based components, by ' +
'initializing the property. ' +
- 'See: https://vuejs.org/v2/guide/reactivity.html#Declaring-Reactive-Properties.',
+ 'See: https://v2.vuejs.org/v2/guide/reactivity.html#Declaring-Reactive-Properties',
target
);
};
@@ -2020,7 +2020,7 @@ if (process.env.NODE_ENV !== 'production') {
"Property \"" + key + "\" must be accessed with \"$data." + key + "\" because " +
'properties starting with "$" or "_" are not proxied in the Vue instance to ' +
'prevent conflicts with Vue internals. ' +
- 'See: https://vuejs.org/v2/api/#data',
+ 'See: https://v2.vuejs.org/v2/api/#data',
target
);
};
@@ -4900,7 +4900,7 @@ function initData (vm) {
data = {};
process.env.NODE_ENV !== 'production' && warn(
'data functions should return an object:\n' +
- 'https://vuejs.org/v2/guide/components.html#data-Must-Be-a-Function',
+ 'https://v2.vuejs.org/v2/guide/components.html#data-Must-Be-a-Function',
vm
);
}
diff --git a/packages/weex-vue-framework/index.js b/packages/weex-vue-framework/index.js
index 487c97be7ef..8fab9f5373b 100644
--- a/packages/weex-vue-framework/index.js
+++ b/packages/weex-vue-framework/index.js
@@ -28,7 +28,7 @@ function createInstanceContext (
data: data
};
- // Each instance has a independent `Vue` module instance
+ // Each instance has an independent `Vue` module instance
var Vue = instance.Vue = createVueModuleInstance(instanceId, weex);
// DEPRECATED
diff --git a/src/compiler/codegen/index.js b/src/compiler/codegen/index.js
index acb3ca9118c..cb6d1f9f1e6 100644
--- a/src/compiler/codegen/index.js
+++ b/src/compiler/codegen/index.js
@@ -204,7 +204,7 @@ export function genFor (
state.warn(
`<${el.tag} v-for="${alias} in ${exp}">: component lists rendered with ` +
`v-for should have explicit keys. ` +
- `See https://vuejs.org/guide/list.html#key for more info.`,
+ `See https://v2.vuejs.org/v2/guide/list.html#Maintaining-State for more info.`,
el.rawAttrsMap['v-for'],
true /* tip */
)
diff --git a/src/core/instance/proxy.js b/src/core/instance/proxy.js
index b1884f7118c..74c19cf601a 100644
--- a/src/core/instance/proxy.js
+++ b/src/core/instance/proxy.js
@@ -19,7 +19,7 @@ if (process.env.NODE_ENV !== 'production') {
'referenced during render. Make sure that this property is reactive, ' +
'either in the data option, or for class-based components, by ' +
'initializing the property. ' +
- 'See: https://vuejs.org/v2/guide/reactivity.html#Declaring-Reactive-Properties.',
+ 'See: https://v2.vuejs.org/v2/guide/reactivity.html#Declaring-Reactive-Properties',
target
)
}
@@ -29,7 +29,7 @@ if (process.env.NODE_ENV !== 'production') {
`Property "${key}" must be accessed with "$data.${key}" because ` +
'properties starting with "$" or "_" are not proxied in the Vue instance to ' +
'prevent conflicts with Vue internals. ' +
- 'See: https://vuejs.org/v2/api/#data',
+ 'See: https://v2.vuejs.org/v2/api/#data',
target
)
}
diff --git a/src/core/instance/state.js b/src/core/instance/state.js
index 64d03649121..edcb13167e7 100644
--- a/src/core/instance/state.js
+++ b/src/core/instance/state.js
@@ -119,7 +119,7 @@ function initData (vm: Component) {
data = {}
process.env.NODE_ENV !== 'production' && warn(
'data functions should return an object:\n' +
- 'https://vuejs.org/v2/guide/components.html#data-Must-Be-a-Function',
+ 'https://v2.vuejs.org/v2/guide/components.html#data-Must-Be-a-Function',
vm
)
}
diff --git a/src/platforms/web/compiler/modules/class.js b/src/platforms/web/compiler/modules/class.js
index dcb5a229c2b..378c959c9d7 100644
--- a/src/platforms/web/compiler/modules/class.js
+++ b/src/platforms/web/compiler/modules/class.js
@@ -23,7 +23,7 @@ function transformNode (el: ASTElement, options: CompilerOptions) {
}
}
if (staticClass) {
- el.staticClass = JSON.stringify(staticClass)
+ el.staticClass = JSON.stringify(staticClass.replace(/\s+/g, ' ').trim())
}
const classBinding = getBindingAttr(el, 'class', false /* getStatic */)
if (classBinding) {
diff --git a/src/platforms/web/runtime/index.js b/src/platforms/web/runtime/index.js
index fe29b22aeb1..fa645696533 100644
--- a/src/platforms/web/runtime/index.js
+++ b/src/platforms/web/runtime/index.js
@@ -67,7 +67,7 @@ if (inBrowser) {
console[console.info ? 'info' : 'log'](
`You are running Vue in development mode.\n` +
`Make sure to turn on production mode when deploying for production.\n` +
- `See more tips at https://vuejs.org/guide/deployment.html`
+ `See more tips at https://v2.vuejs.org/v2/guide/deployment.html`
)
}
}, 0)
diff --git a/src/platforms/weex/entry-framework.js b/src/platforms/weex/entry-framework.js
index a23775d4db5..60c43373428 100644
--- a/src/platforms/weex/entry-framework.js
+++ b/src/platforms/weex/entry-framework.js
@@ -22,7 +22,7 @@ export function createInstanceContext (
data
}
- // Each instance has a independent `Vue` module instance
+ // Each instance has an independent `Vue` module instance
const Vue = instance.Vue = createVueModuleInstance(instanceId, weex)
// DEPRECATED
diff --git a/src/shared/util.js b/src/shared/util.js
index 9f240c77b14..3168a1ff9c0 100644
--- a/src/shared/util.js
+++ b/src/shared/util.js
@@ -35,7 +35,7 @@ export function isPrimitive (value: any): boolean %checks {
/**
* Quick object check - this is primarily used to tell
- * Objects from primitive values when we know the value
+ * objects from primitive values when we know the value
* is a JSON-compliant type.
*/
export function isObject (obj: mixed): boolean %checks {
diff --git a/test/ssr/ssr-basic-renderer.spec.js b/test/ssr/ssr-basic-renderer.spec.js
index 09ce8e7dd46..04c8d80e6a7 100644
--- a/test/ssr/ssr-basic-renderer.spec.js
+++ b/test/ssr/ssr-basic-renderer.spec.js
@@ -52,7 +52,7 @@ describe('SSR: basicRenderer', () => {
})
// #5941
- it('should work peoperly when accessing $ssrContext in root component', done => {
+ it('should work properly when accessing $ssrContext in root component', done => {
let ssrContext
renderToString(new Vue({
template: `
diff --git a/test/ssr/ssr-string.spec.js b/test/ssr/ssr-string.spec.js
index b4f962872f5..33094be9c33 100644
--- a/test/ssr/ssr-string.spec.js
+++ b/test/ssr/ssr-string.spec.js
@@ -1351,7 +1351,7 @@ describe('SSR: renderToString', () => {
`
}, result => {
- expect(result).toContain(``)
+ expect(result).toContain(``)
done()
})
})
diff --git a/test/unit/features/component/component-async.spec.js b/test/unit/features/component/component-async.spec.js
index 1e492f7f617..8ce085de313 100644
--- a/test/unit/features/component/component-async.spec.js
+++ b/test/unit/features/component/component-async.spec.js
@@ -7,7 +7,7 @@ describe('Component async', () => {
const oldClearTimeout = window.clearTimeout;
// will contain pending timeouts set during the test iteration
- // will contain the id of the timeout as the key, and the the millisecond timeout as the value
+ // will contain the id of the timeout as the key, and the millisecond timeout as the value
// this helps to identify the timeout that is still pending
let timeoutsPending = {};
diff --git a/test/unit/features/component/component-scoped-slot.spec.js b/test/unit/features/component/component-scoped-slot.spec.js
index 8e9d584ae3e..a77b055ccd6 100644
--- a/test/unit/features/component/component-scoped-slot.spec.js
+++ b/test/unit/features/component/component-scoped-slot.spec.js
@@ -1327,7 +1327,7 @@ describe('Component scoped slot', () => {
})
// #11652
- it('should update when swtching between two components with slot and without slot', done => {
+ it('should update when switching between two components with slot and without slot', done => {
const Child = {
template: `
`
}
diff --git a/test/unit/features/directives/class.spec.js b/test/unit/features/directives/class.spec.js
index 0ee3380ca9a..38a25988d2a 100644
--- a/test/unit/features/directives/class.spec.js
+++ b/test/unit/features/directives/class.spec.js
@@ -152,6 +152,39 @@ describe('Directive v-bind:class', () => {
}).then(done)
})
+ // css static classes should only contain a single space in between,
+ // as all the text inside of classes is shipped as a JS string
+ // and this could lead to useless spacing in static classes
+ it('condenses whitespace in staticClass', done => {
+ const vm = new Vue({
+ template: '',
+ }).$mount()
+ expect(vm.$el.className).toBe('test1 test2 test3 test4 test5 test6')
+ done()
+ })
+
+ it('condenses whitespace in staticClass merge in a component', done => {
+ const vm = new Vue({
+ template: `
+
+
+ `,
+ data: {
+ componentClass1: 'componentClass1',
+ },
+ components: {
+ component1: {
+ template: ''
+ },
+ }
+ }).$mount()
+ expect(vm.$el.className).toBe('test staticClass componentClass1')
+ vm.componentClass1 = 'c1'
+ waitForUpdate(() => {
+ expect(vm.$el.className).toBe('test staticClass c1')
+ }).then(done)
+ })
+
// a vdom patch edge case where the user has several un-keyed elements of the
// same tag next to each other, and toggling them.
it('properly remove staticClass for toggling un-keyed children', done => {
diff --git a/test/unit/features/directives/on.spec.js b/test/unit/features/directives/on.spec.js
index 7c252031172..353d3df5372 100644
--- a/test/unit/features/directives/on.spec.js
+++ b/test/unit/features/directives/on.spec.js
@@ -31,7 +31,7 @@ describe('Directive v-on', () => {
expect(event.type).toBe('click')
})
- it('should bind event to a inline statement', () => {
+ it('should bind event to an inline statement', () => {
vm = new Vue({
el,
template: '',
@@ -218,7 +218,7 @@ describe('Directive v-on', () => {
})
// ctrl, shift, alt, meta
- it('should support system modifers', () => {
+ it('should support system modifiers', () => {
vm = new Vue({
el,
template: `
diff --git a/test/unit/features/global-api/set-delete.spec.js b/test/unit/features/global-api/set-delete.spec.js
index d1c7f3d8709..59e75ae4dbe 100644
--- a/test/unit/features/global-api/set-delete.spec.js
+++ b/test/unit/features/global-api/set-delete.spec.js
@@ -14,7 +14,7 @@ describe('Global API: set/delete', () => {
}).then(done)
})
- it('should update a observing object', done => {
+ it('should update an observing object', done => {
const vm = new Vue({
template: '{{foo.x}}
',
data: { foo: { x: 1 }}
@@ -26,7 +26,7 @@ describe('Global API: set/delete', () => {
}).then(done)
})
- it('should update a observing array', done => {
+ it('should update an observing array', done => {
const vm = new Vue({
template: '',
data: { list: ['a', 'b', 'c'] }
diff --git a/yarn.lock b/yarn.lock
index a8bf613003a..0477ff0359f 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -945,11 +945,11 @@ ajv-keywords@^3.1.0:
integrity sha1-6GuBnGAs+IIa1jdBNpjx3sAhhHo=
ajv@^6.1.0, ajv@^6.5.3, ajv@^6.5.5, ajv@^6.6.1:
- version "6.6.2"
- resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.6.2.tgz#caceccf474bf3fc3ce3b147443711a24063cc30d"
- integrity sha512-FBHEW6Jf5TB9MGBgUUA9XHkTbjXYfAUjY43ACMfmdMRHniyoMHjHjzD50OK8LGDWQwp4rWEsIq5kEqq7rvIM1g==
+ version "6.12.6"
+ resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4"
+ integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==
dependencies:
- fast-deep-equal "^2.0.1"
+ fast-deep-equal "^3.1.1"
fast-json-stable-stringify "^2.0.0"
json-schema-traverse "^0.4.1"
uri-js "^4.2.2"
@@ -1810,7 +1810,7 @@ chokidar@^2.0.2, chokidar@^2.0.3:
optionalDependencies:
fsevents "^1.2.2"
-chownr@^1.1.1:
+chownr@^1.1.1, chownr@^1.1.4:
version "1.1.4"
resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.1.4.tgz#6fc9d7b42d32a583596337666e7d08084da2cc6b"
integrity sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==
@@ -3246,15 +3246,15 @@ extsprintf@^1.2.0:
resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.4.0.tgz#e2689f8f356fad62cca65a3a91c5df5f9551692f"
integrity sha1-4mifjzVvrWLMplo6kcXfX5VRaS8=
-fast-deep-equal@^2.0.1:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz#7b05218ddf9667bf7f370bf7fdb2cb15fdd0aa49"
- integrity sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=
+fast-deep-equal@^3.1.1:
+ version "3.1.3"
+ resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525"
+ integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==
fast-json-stable-stringify@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz#d5142c0caee6b1189f87d3a76111064f86c8bbf2"
- integrity sha1-1RQsDK7msRifh9OnYREGT4bIu/I=
+ version "2.1.0"
+ resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633"
+ integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==
fast-levenshtein@~2.0.4:
version "2.0.6"
@@ -3453,9 +3453,9 @@ flush-write-stream@^1.0.0:
readable-stream "^2.0.4"
follow-redirects@^1.0.0:
- version "1.13.0"
- resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.13.0.tgz#b42e8d93a2a7eea5ed88633676d6597bc8e384db"
- integrity sha512-aq6gF1BEKje4a9i9+5jimNFIpq4Q1WiwBToeRK5NvZBd/TRsmW8BsJfOEGkr76TbOyPVD3OVDN910EcUNtRYEA==
+ version "1.14.7"
+ resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.14.7.tgz#2004c02eb9436eee9a21446a6477debf17e81685"
+ integrity sha512-+hbxoLbFMbRKDwohX8GkTataGqO6Jb7jGwpAlwgy2bIz25XtRm7KEzJM76R1WiNT5SwZkX4Y75SwBolkpmE7iQ==
for-in@^1.0.1, for-in@^1.0.2:
version "1.0.2"
@@ -3519,7 +3519,7 @@ fs-extra@^1.0.0:
jsonfile "^2.1.0"
klaw "^1.0.0"
-fs-minipass@^1.2.5:
+fs-minipass@^1.2.7:
version "1.2.7"
resolved "https://registry.yarnpkg.com/fs-minipass/-/fs-minipass-1.2.7.tgz#ccff8570841e7fe4265693da88936c55aed7f7c7"
integrity sha512-GWSSJGFy4e9GUeCcbIkED+bgAoFyj7XF1mV8rma3QW4NIqX9Kyx79N/PF61H5udOV3aY1IaMLs6pGbH71nlCTA==
@@ -5247,15 +5247,10 @@ lodash@4.17.5:
resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.5.tgz#99a92d65c0272debe8c96b6057bc8fbfa3bed511"
integrity sha512-svL3uiZf1RwhH+cWrfZn3A4+U58wbP0tGVTLQPbjplZxZ8ROD9VLuNgsRniTlLe7OlSqR79RUehXgpBW/s0IQw==
-lodash@^4.0.1, lodash@^4.16.6, lodash@^4.17.0, lodash@^4.17.10, lodash@^4.17.11, lodash@^4.17.14, lodash@^4.17.5, lodash@^4.2.1, lodash@^4.3.0, lodash@^4.5.0:
- version "4.17.20"
- resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.20.tgz#b44a9b6297bcb698f1c51a3545a2b3b368d59c52"
- integrity sha512-PlhdFcillOINfeV7Ni6oF1TAEayyZBoZ8bcshTHqOYJYlrqzRK5hagpagky5o4HfCzzd1TRkXPMFq6cKk9rGmA==
-
-lodash@^4.17.4:
- version "4.17.19"
- resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.19.tgz#e48ddedbe30b3321783c5b4301fbd353bc1e4a4b"
- integrity sha512-JNvd8XER9GQX0v2qJgsaN/mzFCNA5BRe/j8JN9d+tWyGLSodKQHKFicdwNYzWwI3wjRnaKPsGj1XkBjx/F96DQ==
+lodash@^4.0.1, lodash@^4.16.6, lodash@^4.17.0, lodash@^4.17.10, lodash@^4.17.11, lodash@^4.17.14, lodash@^4.17.4, lodash@^4.17.5, lodash@^4.2.1, lodash@^4.3.0, lodash@^4.5.0:
+ version "4.17.21"
+ resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c"
+ integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==
log-symbols@^1.0.2:
version "1.0.2"
@@ -5569,7 +5564,7 @@ minimist@~0.0.1:
resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.10.tgz#de3f98543dbf96082be48ad1a0c7cda836301dcf"
integrity sha1-3j+YVD2/lggr5IrRoMfNqDYwHc8=
-minipass@^2.6.0, minipass@^2.8.6, minipass@^2.9.0:
+minipass@^2.6.0, minipass@^2.9.0:
version "2.9.0"
resolved "https://registry.yarnpkg.com/minipass/-/minipass-2.9.0.tgz#e713762e7d3e32fed803115cf93e04bca9fcc9a6"
integrity sha512-wxfUjg9WebH+CUDX/CdbRlh5SmfZiy/hpkxaRI16Y9W56Pa75sWgd/rvFilSgrauD9NyFymP/+JFV3KwzIsJeg==
@@ -5577,7 +5572,7 @@ minipass@^2.6.0, minipass@^2.8.6, minipass@^2.9.0:
safe-buffer "^5.1.2"
yallist "^3.0.0"
-minizlib@^1.2.1:
+minizlib@^1.3.3:
version "1.3.3"
resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-1.3.3.tgz#2290de96818a34c29551c8a8d301216bd65a861d"
integrity sha512-6ZYMOEnmVsdCeTJVE0W9ZD+pVnE8h9Hma/iOwwRDsdQoePpoX56/8B6z3P9VNwppJuBKNRuFDRNRqRWexT9G9Q==
@@ -5615,7 +5610,7 @@ mkdirp@0.5.1:
dependencies:
minimist "0.0.8"
-mkdirp@0.5.x, mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@^0.5.5, mkdirp@~0.5.0:
+mkdirp@0.5.x, mkdirp@^0.5.1, mkdirp@^0.5.5, mkdirp@~0.5.0:
version "0.5.5"
resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.5.tgz#d91cefd62d1436ca0f41620e251288d420099def"
integrity sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==
@@ -7098,7 +7093,7 @@ rxjs@^6.1.0, rxjs@^6.3.3:
dependencies:
tslib "^1.9.0"
-safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.1, safe-buffer@^5.1.2:
+safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.1, safe-buffer@^5.1.2, safe-buffer@^5.2.1:
version "5.2.1"
resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6"
integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==
@@ -7759,17 +7754,17 @@ tapable@^1.0.0, tapable@^1.1.0:
integrity sha512-9I2ydhj8Z9veORCw5PRm4u9uebCn0mcCa6scWoNcbZ6dAtoo2618u9UUzxgmsCOreJpqDDuv61LvwofW7hLcBA==
tar@^4:
- version "4.4.15"
- resolved "https://registry.yarnpkg.com/tar/-/tar-4.4.15.tgz#3caced4f39ebd46ddda4d6203d48493a919697f8"
- integrity sha512-ItbufpujXkry7bHH9NpQyTXPbJ72iTlXgkBAYsAjDXk3Ds8t/3NfO5P4xZGy7u+sYuQUbimgzswX4uQIEeNVOA==
+ version "4.4.19"
+ resolved "https://registry.yarnpkg.com/tar/-/tar-4.4.19.tgz#2e4d7263df26f2b914dee10c825ab132123742f3"
+ integrity sha512-a20gEsvHnWe0ygBY8JbxoM4w3SJdhc7ZAuxkLqh+nvNQN2IOt0B5lLgM490X5Hl8FF0dl0tOf2ewFYAlIFgzVA==
dependencies:
- chownr "^1.1.1"
- fs-minipass "^1.2.5"
- minipass "^2.8.6"
- minizlib "^1.2.1"
- mkdirp "^0.5.0"
- safe-buffer "^5.1.2"
- yallist "^3.0.3"
+ chownr "^1.1.4"
+ fs-minipass "^1.2.7"
+ minipass "^2.9.0"
+ minizlib "^1.3.3"
+ mkdirp "^0.5.5"
+ safe-buffer "^5.2.1"
+ yallist "^3.1.1"
tcp-port-used@^1.0.1:
version "1.0.1"
@@ -8081,9 +8076,9 @@ upath@^1.0.5:
integrity sha512-bzpH/oBhoS/QI/YtbkqCg6VEiPYjSZtrHQM6/QnJS6OL9pKUFLqb3aFh4Scvwm45+7iAgiMkLhSbaZxUqmrprw==
uri-js@^4.2.2:
- version "4.2.2"
- resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.2.2.tgz#94c540e1ff772956e2299507c010aea6c8838eb0"
- integrity sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==
+ version "4.4.1"
+ resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.4.1.tgz#9b1a52595225859e55f669d928f88c6c57f2a77e"
+ integrity sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==
dependencies:
punycode "^2.1.0"
@@ -8386,7 +8381,7 @@ yallist@^2.1.2:
resolved "https://registry.yarnpkg.com/yallist/-/yallist-2.1.2.tgz#1c11f9218f076089a47dd512f93c6699a6a81d52"
integrity sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=
-yallist@^3.0.0, yallist@^3.0.2, yallist@^3.0.3:
+yallist@^3.0.0, yallist@^3.0.2, yallist@^3.1.1:
version "3.1.1"
resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd"
integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==