From 748e9e739bce65d960acaf75f3dfa55df4f97ba7 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Mon, 27 Jul 2020 09:35:10 +0000 Subject: [PATCH 0001/1422] build(deps-dev): bump chromedriver from 83.0.1 to 84.0.1 Bumps [chromedriver](https://github.com/giggio/node-chromedriver) from 83.0.1 to 84.0.1. - [Release notes](https://github.com/giggio/node-chromedriver/releases) - [Commits](https://github.com/giggio/node-chromedriver/commits) Signed-off-by: dependabot-preview[bot] --- package.json | 2 +- yarn.lock | 36 ++++++++++++++++++------------------ 2 files changed, 19 insertions(+), 19 deletions(-) diff --git a/package.json b/package.json index 890d8c053..518da05f3 100644 --- a/package.json +++ b/package.json @@ -78,7 +78,7 @@ "axios": "^0.19.2", "browserstack-local": "^1.4.5", "chalk": "^4.1.0", - "chromedriver": "^83.0.1", + "chromedriver": "^84.0.1", "codecov": "^3.7.2", "conventional-changelog-cli": "^2.0.34", "css-loader": "^3.6.0", diff --git a/yarn.lock b/yarn.lock index ef9ddbd36..6a03f269a 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2221,16 +2221,16 @@ chrome-trace-event@^1.0.2: dependencies: tslib "^1.9.0" -chromedriver@^83.0.1: - version "83.0.1" - resolved "https://registry.yarnpkg.com/chromedriver/-/chromedriver-83.0.1.tgz#c4cf9b3f7076fea5e9ef787e65907cd035ffbd10" - integrity sha512-51/YsLIMRF+L0ooMlM4aZjyoOpDs0gDXGlT6+/CwWEnvK53PUyef9FkotKbzknCaUeL/qUw3ic3IMmsNc+SUxg== +chromedriver@^84.0.1: + version "84.0.1" + resolved "https://registry.yarnpkg.com/chromedriver/-/chromedriver-84.0.1.tgz#eaca7723f1a58c262a5c521b8596769af40b0d4f" + integrity sha512-iJ6Y680yp58+KlAPS5YgYe3oePVFf8jY5k4YoczhXkT0p/mQZKfGNkGG/Xc0LjGWDQRTgZwXg66hOXoApIQecg== dependencies: "@testim/chrome-version" "^1.0.7" axios "^0.19.2" del "^5.1.0" - extract-zip "^2.0.0" - https-proxy-agent "^2.2.4" + extract-zip "^2.0.1" + https-proxy-agent "^5.0.0" mkdirp "^1.0.4" tcp-port-used "^1.0.1" @@ -3923,10 +3923,10 @@ extglob@^2.0.4: snapdragon "^0.8.1" to-regex "^3.0.1" -extract-zip@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/extract-zip/-/extract-zip-2.0.0.tgz#f53b71d44f4ff5a4527a2259ade000fb8b303492" - integrity sha512-i42GQ498yibjdvIhivUsRslx608whtGoFIhF26Z7O4MYncBxp8CwalOs1lnHy21A9sIohWO2+uiE4SRtC9JXDg== +extract-zip@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/extract-zip/-/extract-zip-2.0.1.tgz#663dca56fe46df890d5f131ef4a06d22bb8ba13a" + integrity sha512-GDhU9ntwuKyGXdZBUgTIe+vXnWj0fppUEtMDL0+idd5Sta8TGpHssn/eusA9mrPr9qNDym6SxAYZjNvCn/9RBg== dependencies: debug "^4.1.1" get-stream "^5.1.0" @@ -4903,14 +4903,6 @@ https-browserify@^1.0.0: resolved "https://registry.yarnpkg.com/https-browserify/-/https-browserify-1.0.0.tgz#ec06c10e0a34c0f2faf199f7fd7fc78fffd03c73" integrity sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM= -https-proxy-agent@^2.2.4: - version "2.2.4" - resolved "https://registry.yarnpkg.com/https-proxy-agent/-/https-proxy-agent-2.2.4.tgz#4ee7a737abd92678a293d9b34a1af4d0d08c787b" - integrity sha512-OmvfoQ53WLjtA9HeYP9RNrWMJzzAz1JGaSFr1nijg0PVR1JaD/xbJq1mdEIIlxGpXp9eSe/O2LgU9DJmTPd0Eg== - dependencies: - agent-base "^4.3.0" - debug "^3.1.0" - https-proxy-agent@^3.0.0: version "3.0.1" resolved "https://registry.yarnpkg.com/https-proxy-agent/-/https-proxy-agent-3.0.1.tgz#b8c286433e87602311b01c8ea34413d856a4af81" @@ -4927,6 +4919,14 @@ https-proxy-agent@^4.0.0: agent-base "5" debug "4" +https-proxy-agent@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/https-proxy-agent/-/https-proxy-agent-5.0.0.tgz#e2a90542abb68a762e0a0850f6c9edadfd8506b2" + integrity sha512-EkYm5BcKUGiduxzSt3Eppko+PiNWNEpa4ySk9vTC6wDsQJW9rHSa+UhGNJoRYp7bz6Ht1eaRIa6QaJqO5rCFbA== + dependencies: + agent-base "6" + debug "4" + human-signals@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-1.1.1.tgz#c5b1cd14f50aeae09ab6c59fe63ba3395fe4dfa3" From 23e6e9c10b4f9cb9f074ebb4f56d2d99acac9097 Mon Sep 17 00:00:00 2001 From: Eduardo San Martin Morote Date: Wed, 5 Aug 2020 10:25:52 +0200 Subject: [PATCH 0002/1422] feat(router-link): add ariaCurrentValue prop --- src/RouterLink.ts | 38 ++++++++++++++++++++++++++++++++++++-- vetur/attributes.json | 4 ++++ 2 files changed, 40 insertions(+), 2 deletions(-) diff --git a/src/RouterLink.ts b/src/RouterLink.ts index c5d3d411b..03ba7170b 100644 --- a/src/RouterLink.ts +++ b/src/RouterLink.ts @@ -15,13 +15,41 @@ import { RouteRecord } from './matcher/types' import { assign } from './utils' export interface RouterLinkOptions { + /** + * Location the link should navigate to when clicked on. + */ to: RouteLocationRaw - // TODO: refactor using extra options allowed in router.push. Needs RFC + /** + * Calls `router.replace` instead of `router.push`. + */ replace?: boolean + // TODO: refactor using extra options allowed in router.push. Needs RFC } export interface RouterLinkProps extends RouterLinkOptions { + /** + * Whether RouterLink should not wrap its content in an `a` tag. + */ custom?: boolean + /** + * Class to apply when the link is active + */ + activeClass?: string + /** + * Class to apply when the link is exact active + */ + exactActiveClass?: string + /** + * Value passed to the attribute `aria-current` when the link is exact active. Defaults to "page" + */ + ariaCurrentValue?: + | 'page' + | 'step' + | 'location' + | 'date' + | 'time' + | 'true' + | 'false' } type UseLinkOptions = VueUseOptions @@ -101,6 +129,10 @@ export const RouterLinkImpl = defineComponent({ // inactiveClass: String, exactActiveClass: String, custom: Boolean, + ariaCurrentValue: { + type: String as PropType, + default: 'page', + }, }, setup(props, { slots, attrs }) { @@ -133,7 +165,9 @@ export const RouterLinkImpl = defineComponent({ 'a', assign( { - 'aria-current': link.isExactActive ? 'page' : null, + 'aria-current': link.isExactActive + ? props.ariaCurrentValue + : null, onClick: link.navigate, href: link.href, }, diff --git a/vetur/attributes.json b/vetur/attributes.json index 355b93f25..c2a5eb1f9 100644 --- a/vetur/attributes.json +++ b/vetur/attributes.json @@ -20,5 +20,9 @@ "exact-active-class": { "type": "string", "description": "Configure the active CSS class applied when the link is exactly active. Note the default value can also be configured globally via the `linkExactActiveClass` router constructor option." + }, + "aria-current-value": { + "options": ["page", "step", "location", "date", "time", "true", "false"], + "description": "Configure the value of `aria-current` when the link is active with exact match. It must be one of the [allowed values for `aria-current`](https://www.w3.org/TR/wai-aria-1.2/#aria-current) in the ARIA spec. In most cases, the default of `page` should be the best fit." } } From de8da88711191524a62f3240c7fd18aa03d8b6fb Mon Sep 17 00:00:00 2001 From: Eduardo San Martin Morote Date: Wed, 5 Aug 2020 10:26:40 +0200 Subject: [PATCH 0003/1422] test(router-link): add test regarding aria-current --- __tests__/RouterLink.spec.ts | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/__tests__/RouterLink.spec.ts b/__tests__/RouterLink.spec.ts index 5dbc426f0..1b7606c4a 100644 --- a/__tests__/RouterLink.spec.ts +++ b/__tests__/RouterLink.spec.ts @@ -13,6 +13,7 @@ import { mount, createMockedRoute } from './mount' import { nextTick } from 'vue' import { RouteRecordNormalized } from '../src/matcher/types' import { routerKey } from '../src/injectionSymbols' +import { tick } from './utils' const records = { home: {} as RouteRecordNormalized, @@ -422,6 +423,27 @@ describe('RouterLink', () => { expect(wrapper.find('a')!.className).toContain('router-link-active') }) + it('sets aria-current to page by default when exact active', async () => { + const { wrapper, route } = await factory( + locations.parent.normalized, + { to: locations.parent.string }, + locations.parent.normalized + ) + expect(wrapper.find('a')!.getAttribute('aria-current')).toBe('page') + route.set(locations.child.normalized) + await tick() + expect(wrapper.find('a')!.getAttribute('aria-current')).not.toBe('page') + }) + + it('can customize aria-current value', async () => { + const { wrapper } = await factory( + locations.basic.normalized, + { to: locations.basic.string, ariaCurrentValue: 'time' }, + locations.basic.normalized + ) + expect(wrapper.find('a')!.getAttribute('aria-current')).toBe('time') + }) + it('can customize active class', async () => { const { wrapper } = await factory( locations.basic.normalized, From 4a91b68f4b75cf1c67478868c9a691c972ad194f Mon Sep 17 00:00:00 2001 From: Eduardo San Martin Morote Date: Wed, 5 Aug 2020 10:26:49 +0200 Subject: [PATCH 0004/1422] test: fix failing tests --- __tests__/router.spec.ts | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/__tests__/router.spec.ts b/__tests__/router.spec.ts index b4dbecee3..9fd384983 100644 --- a/__tests__/router.spec.ts +++ b/__tests__/router.spec.ts @@ -763,7 +763,7 @@ describe('Router', () => { describe('Dynamic Routing', () => { it('resolves new added routes', async () => { - const { router } = await newRouter() + const { router } = await newRouter({ routes: [] }) expect(router.resolve('/new-route')).toMatchObject({ name: undefined, matched: [], @@ -793,7 +793,7 @@ describe('Router', () => { }) it('can redirect to children in the middle of navigation', async () => { - const { router } = await newRouter() + const { router } = await newRouter({ routes: [] }) expect(router.resolve('/new-route')).toMatchObject({ name: undefined, matched: [], @@ -849,7 +849,7 @@ describe('Router', () => { }) it('can reroute to child', async () => { - const { router } = await newRouter() + const { router } = await newRouter({ routes: [] }) router.addRoute({ path: '/new', component: components.Foo, @@ -890,7 +890,9 @@ describe('Router', () => { }) it('stops resolving removed routes', async () => { - const { router } = await newRouter() + const { router } = await newRouter({ + routes: [routes.find(route => route.name === 'Foo')!], + }) // regular route router.removeRoute('Foo') expect(router.resolve('/foo')).toMatchObject({ From b730fd49a143ec9f5a01686fddc45d563f1bacf7 Mon Sep 17 00:00:00 2001 From: Eduardo San Martin Morote Date: Wed, 5 Aug 2020 10:34:38 +0200 Subject: [PATCH 0005/1422] release: v4.0.0-beta.6 --- CHANGELOG.md | 11 +++++++++++ package.json | 2 +- 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 5819357ae..28cc168c1 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,14 @@ +# [4.0.0-beta.6](https://github.com/vuejs/vue-router-next/compare/v4.0.0-beta.5...v4.0.0-beta.6) (2020-08-05) + +### Bug Fixes + +- **router:** stack overflow with redirect ([3594011](https://github.com/vuejs/vue-router-next/commit/359401107078348f0410abbd36cffb3b8d4d8f85)), closes [#404](https://github.com/vuejs/vue-router-next/issues/404) + +### Features + +- **router-link:** add ariaCurrentValue prop ([23e6e9c](https://github.com/vuejs/vue-router-next/commit/23e6e9c10b4f9cb9f074ebb4f56d2d99acac9097)) +- add Vetur support ([1f1189f](https://github.com/vuejs/vue-router-next/commit/1f1189fd23dc6ec318edd5d7e8f225b467d4d386)), closes [#381](https://github.com/vuejs/vue-router-next/issues/381) + # [4.0.0-beta.5](https://github.com/vuejs/vue-router-next/compare/v4.0.0-beta.4...v4.0.0-beta.5) (2020-08-03) ### Features diff --git a/package.json b/package.json index 1e54abd2c..cc7797d39 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "vue-router", - "version": "4.0.0-beta.5", + "version": "4.0.0-beta.6", "main": "dist/vue-router.cjs.js", "browser": "dist/vue-router.esm.js", "unpkg": "dist/vue-router.global.js", From 79f8d13481adb51f974083b2d1b7a497edb877ed Mon Sep 17 00:00:00 2001 From: Eduardo San Martin Morote Date: Wed, 5 Aug 2020 13:32:49 +0200 Subject: [PATCH 0006/1422] chore: remove old tsdoc --- src/matcher/pathParserRanker.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/matcher/pathParserRanker.ts b/src/matcher/pathParserRanker.ts index a5f4a1d3e..663f2bf25 100644 --- a/src/matcher/pathParserRanker.ts +++ b/src/matcher/pathParserRanker.ts @@ -4,7 +4,7 @@ import { assign } from '../utils' export type PathParams = Record /** - * @description A key + * A param in a url like `/users/:id` */ interface PathParserParamKey { name: string From 837b6bbc216b24bbf0b2a2e678c70914f45adabe Mon Sep 17 00:00:00 2001 From: Eduardo San Martin Morote Date: Wed, 5 Aug 2020 14:12:15 +0200 Subject: [PATCH 0007/1422] test(types): use ts instead of tsd --- circle.yml | 2 +- package.json | 6 +- test-dts/components.test-d.tsx | 6 +- test-dts/index.d.ts | 9 +- test-dts/tsconfig.json | 13 + yarn.lock | 433 +-------------------------------- 6 files changed, 33 insertions(+), 436 deletions(-) create mode 100644 test-dts/tsconfig.json diff --git a/circle.yml b/circle.yml index 1cdd4942d..9afa7e360 100644 --- a/circle.yml +++ b/circle.yml @@ -67,7 +67,7 @@ jobs: - run: yarn test:types - run: yarn build - run: yarn build:dts - - run: yarn run test:tsd + - run: yarn run test:dts # Save cache after this task. At this point e2e are still running - save_cache: key: v2-dependencies-cache-{{ .Branch }}-{{ checksum "yarn.lock" }} diff --git a/package.json b/package.json index cc7797d39..629132365 100644 --- a/package.json +++ b/package.json @@ -7,9 +7,6 @@ "jsdelivr": "dist/vue-router.global.js", "module": "dist/vue-router.esm-bundler.js", "types": "dist/vue-router.d.ts", - "tsd": { - "directory": "test-dts" - }, "sideEffects": false, "license": "MIT", "files": [ @@ -32,7 +29,7 @@ "lint": "prettier -c --parser typescript \"{src,__tests__,e2e}/**/*.[jt]s?(x)\"", "lint:fix": "yarn run lint --write", "test:types": "tsc --build tsconfig.json", - "test:tsd": "tsd", + "test:dts": "tsc -p ./test-dts/tsconfig.json", "test:unit": "jest --coverage", "test": "yarn run test:types && yarn run test:unit && yarn run build && yarn run build:dts && yarn run test:e2e", "test:e2e": "yarn run test:e2e:headless && yarn run test:e2e:native", @@ -107,7 +104,6 @@ "ts-jest": "^26.1.4", "ts-loader": "^8.0.2", "ts-node": "^8.10.2", - "tsd": "^0.11.0", "typescript": "^3.9.7", "vue": "^3.0.0-beta.20", "vue-loader": "^16.0.0-beta.4", diff --git a/test-dts/components.test-d.tsx b/test-dts/components.test-d.tsx index 8ef2cbbe1..97d39aebb 100644 --- a/test-dts/components.test-d.tsx +++ b/test-dts/components.test-d.tsx @@ -1,9 +1,10 @@ -import { expectError, expectType } from 'tsd' import { RouterLink, RouterView, createRouter, createMemoryHistory, + expectError, + expectType, } from './index' let router = createRouter({ @@ -12,8 +13,11 @@ let router = createRouter({ }) // RouterLink +// @ts-expect-error expectError() +// @ts-expect-error expectError() +// @ts-expect-error expectError() expectType() expectType() diff --git a/test-dts/index.d.ts b/test-dts/index.d.ts index 59bf50c08..6c37c4863 100644 --- a/test-dts/index.d.ts +++ b/test-dts/index.d.ts @@ -1,9 +1,6 @@ -// This directory contains a number of d.ts assertions using tsd: -// https://github.com/SamVerschueren/tsd -// The tests checks type errors and will probably show up red in VSCode, and -// it's intended. We cannot use directives like @ts-ignore or @ts-nocheck since -// that would suppress the errors that should be caught. - export * from '../dist/vue-router' export function describe(_name: string, _fn: () => void): void +export function expectType(value: T): void +export function expectError(value: T): void +export function expectAssignable(value: T2): void diff --git a/test-dts/tsconfig.json b/test-dts/tsconfig.json new file mode 100644 index 000000000..1a6da3927 --- /dev/null +++ b/test-dts/tsconfig.json @@ -0,0 +1,13 @@ +{ + "extends": "../tsconfig.json", + "compilerOptions": { + "noEmit": true, + "declaration": true, + "paths": { + "vue-router": ["../dist"] + }, + "noImplicitReturns": false + }, + "include": ["./"], + "exclude": ["../__tests__", "../src"] +} diff --git a/yarn.lock b/yarn.lock index 0ddbf4763..a33aa952b 100644 --- a/yarn.lock +++ b/yarn.lock @@ -546,14 +546,6 @@ resolved "https://registry.yarnpkg.com/@microsoft/tsdoc/-/tsdoc-0.12.19.tgz#2173ccb92469aaf62031fa9499d21b16d07f9b57" integrity sha512-IpgPxHrNxZiMNUSXqR1l/gePKPkfAmIKoDRP9hp7OwjU29ZR8WCJsOJ8iBKgw0Qk+pFwR+8Y1cy8ImLY6e9m4A== -"@mrmlnc/readdir-enhanced@^2.2.1": - version "2.2.1" - resolved "https://registry.yarnpkg.com/@mrmlnc/readdir-enhanced/-/readdir-enhanced-2.2.1.tgz#524af240d1a360527b730475ecfa1344aa540dde" - integrity sha512-bPHp6Ji8b41szTOcaP63VlnbbO5Ny6dwAATtY6JTjh5N2OLrb5Qk/Th5cRkRQhkWCt+EJsYrNB0MiL+Gpn6e3g== - dependencies: - call-me-maybe "^1.0.1" - glob-to-regexp "^0.3.0" - "@nodelib/fs.scandir@2.1.3": version "2.1.3" resolved "https://registry.yarnpkg.com/@nodelib/fs.scandir/-/fs.scandir-2.1.3.tgz#3a582bdb53804c6ba6d146579c46e52130cf4a3b" @@ -567,11 +559,6 @@ resolved "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-2.0.3.tgz#34dc5f4cabbc720f4e60f75a747e7ecd6c175bd3" integrity sha512-bQBFruR2TAwoevBEd/NWMoAAtNGzTRgdrqnYCc7dhzfoNvqPzLyqlEQnzZ3kVnNrSp25iyxE00/3h2fqGAGArA== -"@nodelib/fs.stat@^1.1.2": - version "1.1.3" - resolved "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-1.1.3.tgz#2b5a3ab3f918cca48a8c754c08168e3f03eba61b" - integrity sha512-shAmDyaQC4H92APFoIaVDHCx5bStIocgvbwQyxPRrbUY20V1EYTbSDchWbuwlMG3V17cprZhA6+78JfB+3DTPw== - "@nodelib/fs.walk@^1.2.3": version "1.2.4" resolved "https://registry.yarnpkg.com/@nodelib/fs.walk/-/fs.walk-1.2.4.tgz#011b9202a70a6366e436ca5c065844528ab04976" @@ -1354,13 +1341,6 @@ alphanum-sort@^1.0.0: resolved "https://registry.yarnpkg.com/alphanum-sort/-/alphanum-sort-1.0.2.tgz#97a1119649b211ad33691d9f9f486a8ec9fbe0a3" integrity sha1-l6ERlkmyEa0zaR2fn0hqjsn74KM= -ansi-align@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/ansi-align/-/ansi-align-2.0.0.tgz#c36aeccba563b89ceb556f3690f0b1d9e3547f7f" - integrity sha1-w2rsy6VjuJzrVW82kPCx2eNUf38= - dependencies: - string-width "^2.0.0" - ansi-colors@3.2.3: version "3.2.3" resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-3.2.3.tgz#57d35b8686e851e2cc04c403f1c00203976a1813" @@ -1371,11 +1351,6 @@ ansi-colors@^3.0.0, ansi-colors@^3.2.1: resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-3.2.4.tgz#e3a3da4bfbae6c86a9c285625de124a234026fbf" integrity sha512-hHUXGagefjN2iRrID63xckIvotOXOojhQKWIPUZ4mNUZ9nLZW+7FMNoE1lOkEhNWYsx/7ysGIuJYCiMAA9FnrA== -ansi-escapes@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-2.0.0.tgz#5bae52be424878dd9783e8910e3fc2922e83c81b" - integrity sha1-W65SvkJIeN2Xg+iRDj/Cki6DyBs= - ansi-escapes@^4.2.1, ansi-escapes@^4.3.0: version "4.3.1" resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-4.3.1.tgz#a5c47cc43181f1f38ffd7076837700d395522a61" @@ -1496,7 +1471,7 @@ array-ify@^1.0.0: resolved "https://registry.yarnpkg.com/array-ify/-/array-ify-1.0.0.tgz#9e528762b4a9066ad163a6962a364418e9626ece" integrity sha1-nlKHYrSpBmrRY6aWKjZEGOlibs4= -array-union@^1.0.1, array-union@^1.0.2: +array-union@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/array-union/-/array-union-1.0.2.tgz#9a34410e4f4e3da23dea375be5be70f24778ec39" integrity sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk= @@ -1795,19 +1770,6 @@ boolbase@^1.0.0, boolbase@~1.0.0: resolved "https://registry.yarnpkg.com/boolbase/-/boolbase-1.0.0.tgz#68dff5fbe60c51eb37725ea9e3ed310dcc1e776e" integrity sha1-aN/1++YMUes3cl6p4+0xDcwed24= -boxen@^1.2.1: - version "1.3.0" - resolved "https://registry.yarnpkg.com/boxen/-/boxen-1.3.0.tgz#55c6c39a8ba58d9c61ad22cd877532deb665a20b" - integrity sha512-TNPjfTr432qx7yOjQyaXm3dSR0MH9vXp7eT1BFSl/C51g+EFnOR9hTg1IreahGBmDNCehscshe45f+C1TBZbLw== - dependencies: - ansi-align "^2.0.0" - camelcase "^4.0.0" - chalk "^2.0.1" - cli-boxes "^1.0.0" - string-width "^2.0.0" - term-size "^1.2.0" - widest-line "^2.0.0" - brace-expansion@^1.1.7: version "1.1.11" resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" @@ -2032,11 +1994,6 @@ cache-base@^1.0.1: union-value "^1.0.0" unset-value "^1.0.0" -call-me-maybe@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/call-me-maybe/-/call-me-maybe-1.0.1.tgz#26d208ea89e37b5cbde60250a15f031c16a4d66b" - integrity sha1-JtII6onje1y95gJQoV8DHBak1ms= - caller-callsite@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/caller-callsite/-/caller-callsite-2.0.0.tgz#847e0fce0a223750a9a027c54b33731ad3154134" @@ -2100,7 +2057,7 @@ camelcase@^2.0.0: resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-2.1.1.tgz#7c1d16d679a1bbe59ca02cacecfb011e201f5a1f" integrity sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8= -camelcase@^4.0.0, camelcase@^4.1.0: +camelcase@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-4.1.0.tgz#d545635be1e33c542649c69173e5de6acfae34dd" integrity sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0= @@ -2137,11 +2094,6 @@ capture-exit@^2.0.0: dependencies: rsvp "^4.8.4" -capture-stack-trace@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/capture-stack-trace/-/capture-stack-trace-1.0.1.tgz#a6c0bbe1f38f3aa0b92238ecb6ff42c344d4135d" - integrity sha512-mYQLZnx5Qt1JgB1WEiMCf2647plpGeQ2NMR/5L0HNZzGQo4fuSPnK+wjfPnKZV0aiJDgzmWqqkV/g7JD+DW0qw== - caseless@~0.12.0: version "0.12.0" resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc" @@ -2155,7 +2107,7 @@ chai-nightwatch@^0.4.0: assertion-error "1.0.0" deep-eql "0.1.3" -chalk@^2.0.0, chalk@^2.0.1, chalk@^2.1.0, chalk@^2.3.0, chalk@^2.4.1, chalk@^2.4.2: +chalk@^2.0.0, chalk@^2.0.1, chalk@^2.3.0, chalk@^2.4.1, chalk@^2.4.2: version "2.4.2" resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== @@ -2294,11 +2246,6 @@ clean-stack@^2.0.0: resolved "https://registry.yarnpkg.com/clean-stack/-/clean-stack-2.2.0.tgz#ee8472dbb129e727b31e8a10a427dee9dfe4008b" integrity sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A== -cli-boxes@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/cli-boxes/-/cli-boxes-1.0.0.tgz#4fa917c3e59c94a004cd61f8ee509da651687143" - integrity sha1-T6kXw+WclKAEzWH47lCdplFocUM= - cli-cursor@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-3.1.0.tgz#264305a7ae490d1d03bf0c9ba7c925d1753af307" @@ -2505,18 +2452,6 @@ concat-stream@^1.5.0: readable-stream "^2.2.2" typedarray "^0.0.6" -configstore@^3.0.0: - version "3.1.2" - resolved "https://registry.yarnpkg.com/configstore/-/configstore-3.1.2.tgz#c6f25defaeef26df12dd33414b001fe81a543f8f" - integrity sha512-vtv5HtGjcYUgFrXc6Kx747B83MRRVS5R1VTEQoXvuP+kMI+if6uywV0nDGoiydJRy4yk7h9od5Og0kxx4zUXmw== - dependencies: - dot-prop "^4.1.0" - graceful-fs "^4.1.2" - make-dir "^1.0.0" - unique-string "^1.0.0" - write-file-atomic "^2.0.0" - xdg-basedir "^3.0.0" - connect-history-api-fallback@^1.6.0: version "1.6.0" resolved "https://registry.yarnpkg.com/connect-history-api-fallback/-/connect-history-api-fallback-1.6.0.tgz#8b32089359308d111115d81cad3fceab888f97bc" @@ -2782,13 +2717,6 @@ create-ecdh@^4.0.0: bn.js "^4.1.0" elliptic "^6.0.0" -create-error-class@^3.0.0: - version "3.0.2" - resolved "https://registry.yarnpkg.com/create-error-class/-/create-error-class-3.0.2.tgz#06be7abef947a3f14a30fd610671d401bca8b7b6" - integrity sha1-Br56vvlHo/FKMP1hBnHUAbyot7Y= - dependencies: - capture-stack-trace "^1.0.0" - create-hash@^1.1.0, create-hash@^1.1.2: version "1.2.0" resolved "https://registry.yarnpkg.com/create-hash/-/create-hash-1.2.0.tgz#889078af11a63756bcfb59bd221996be3a9ef196" @@ -2858,11 +2786,6 @@ crypto-browserify@^3.11.0: randombytes "^2.0.0" randomfill "^1.0.3" -crypto-random-string@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/crypto-random-string/-/crypto-random-string-1.0.0.tgz#a230f64f568310e1498009940790ec99545bca7e" - integrity sha1-ojD2T1aDEOFJgAmUB5DsmVRbyn4= - css-color-names@0.0.4, css-color-names@^0.0.4: version "0.0.4" resolved "https://registry.yarnpkg.com/css-color-names/-/css-color-names-0.0.4.tgz#808adc2e79cf84738069b646cb20ec27beb629e0" @@ -3175,11 +3098,6 @@ deep-equal@^1.0.1: object-keys "^1.1.1" regexp.prototype.flags "^1.2.0" -deep-extend@^0.6.0: - version "0.6.0" - resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.6.0.tgz#c4fa7c95404a17a9c3e8ca7e1537312b736330ac" - integrity sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA== - deep-freeze@^0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/deep-freeze/-/deep-freeze-0.0.1.tgz#3a0b0005de18672819dfd38cd31f91179c893e84" @@ -3342,13 +3260,6 @@ diffie-hellman@^5.0.0: miller-rabin "^4.0.0" randombytes "^2.0.0" -dir-glob@^2.2.2: - version "2.2.2" - resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-2.2.2.tgz#fa09f0694153c8918b18ba0deafae94769fc50c4" - integrity sha512-f9LBi5QWzIW3I6e//uxZoLBlUt9kcp66qo0sSCxL6YZKc75R1c4MFCoe/LaZiBGmgujvQdxc5Bn3QhfyvK5Hsw== - dependencies: - path-type "^3.0.0" - dir-glob@^3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-3.0.1.tgz#56dbf73d992a4a93ba1584f4534063fd2e41717f" @@ -3451,13 +3362,6 @@ dot-prop@^3.0.0: dependencies: is-obj "^1.0.0" -dot-prop@^4.1.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/dot-prop/-/dot-prop-4.2.0.tgz#1f19e0c2e1aa0e32797c49799f2837ac6af69c57" - integrity sha512-tUMXrxlExSW6U2EXiiKGSBVdYgtV8qlHL+C10TsW4PURY/ic+eaysnSkwB4kA/mBlCyy/IKDJ+Lc3wbWeaXtuQ== - dependencies: - is-obj "^1.0.0" - dot-prop@^5.2.0: version "5.2.0" resolved "https://registry.yarnpkg.com/dot-prop/-/dot-prop-5.2.0.tgz#c34ecc29556dc45f1f4c22697b6f4904e0cc4fcb" @@ -3475,11 +3379,6 @@ dotenv@^8.2.0: resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-8.2.0.tgz#97e619259ada750eea3e4ea3e26bceea5424b16a" integrity sha512-8sJ78ElpbDJBHNeBzUbUVLsqKdccaa/BXF1uPTw3GrvQTBgrQrtObr2mUrE38vzYd8cEv+m/JBfDLioYcfXoaw== -duplexer3@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/duplexer3/-/duplexer3-0.1.4.tgz#ee01dd1cac0ed3cbc7fdbea37dc0a8f1ce002ce2" - integrity sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI= - duplexer@^0.1.1, duplexer@~0.1.1: version "0.1.1" resolved "https://registry.yarnpkg.com/duplexer/-/duplexer-0.1.1.tgz#ace6ff808c1ce66b57d1ebf97977acb02334cfc1" @@ -3678,17 +3577,6 @@ escodegen@1.x.x, escodegen@^1.14.1: optionalDependencies: source-map "~0.6.1" -eslint-formatter-pretty@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/eslint-formatter-pretty/-/eslint-formatter-pretty-1.3.0.tgz#985d9e41c1f8475f4a090c5dbd2dfcf2821d607e" - integrity sha512-5DY64Y1rYCm7cfFDHEGUn54bvCnK+wSUVF07N8oXeqUJFSd+gnYOTXbzelQ1HurESluY6gnEQPmXOIkB4Wa+gA== - dependencies: - ansi-escapes "^2.0.0" - chalk "^2.1.0" - log-symbols "^2.0.0" - plur "^2.1.2" - string-width "^2.0.0" - eslint-scope@^4.0.3: version "4.0.3" resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-4.0.3.tgz#ca03833310f6889a3264781aa82e63eb9cfe7848" @@ -3782,19 +3670,6 @@ exec-sh@^0.3.2: resolved "https://registry.yarnpkg.com/exec-sh/-/exec-sh-0.3.4.tgz#3a018ceb526cc6f6df2bb504b2bfe8e3a4934ec5" integrity sha512-sEFIkc61v75sWeOe72qyrqg2Qg0OuLESziUDk/O/z2qgS15y2gWVFrI6f2Qn/qw/0/NCfCEsmNA4zOjkwEZT1A== -execa@^0.7.0: - version "0.7.0" - resolved "https://registry.yarnpkg.com/execa/-/execa-0.7.0.tgz#944becd34cc41ee32a63a9faf27ad5a65fc59777" - integrity sha1-lEvs00zEHuMqY6n68nrVpl/Fl3c= - dependencies: - cross-spawn "^5.0.1" - get-stream "^3.0.0" - is-stream "^1.1.0" - npm-run-path "^2.0.0" - p-finally "^1.0.0" - signal-exit "^3.0.0" - strip-eof "^1.0.0" - execa@^0.8.0: version "0.8.0" resolved "https://registry.yarnpkg.com/execa/-/execa-0.8.0.tgz#d8d76bbc1b55217ed190fd6dd49d3c774ecfc8da" @@ -3974,18 +3849,6 @@ fast-deep-equal@^3.1.1: resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.1.tgz#545145077c501491e33b15ec408c294376e94ae4" integrity sha512-8UEa58QDLauDNfpbrX55Q9jrGHThw2ZMdOky5Gl1CDtVeJDPVrG4Jxx1N8jw2gkWaff5UUuX1KJd+9zGe2B+ZA== -fast-glob@^2.2.6: - version "2.2.7" - resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-2.2.7.tgz#6953857c3afa475fff92ee6015d52da70a4cd39d" - integrity sha512-g1KuQwHOZAmOZMuBtHdxDtju+T2RT8jgCC9aANsbpdiDDTSnjgfuVsIBNKbUeJI3oKMRExcfNDtJl4OhbffMsw== - dependencies: - "@mrmlnc/readdir-enhanced" "^2.2.1" - "@nodelib/fs.stat" "^1.1.2" - glob-parent "^3.1.0" - is-glob "^4.0.0" - merge2 "^1.2.3" - micromatch "^3.1.10" - fast-glob@^3.0.3, fast-glob@^3.1.1: version "3.2.2" resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.2.2.tgz#ade1a9d91148965d4bf7c51f72e1ca662d32e63d" @@ -4435,11 +4298,6 @@ glob-parent@^5.1.0, glob-parent@~5.1.0: dependencies: is-glob "^4.0.1" -glob-to-regexp@^0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/glob-to-regexp/-/glob-to-regexp-0.3.0.tgz#8c5a1494d2066c570cc3bfe4496175acc4d502ab" - integrity sha1-jFoUlNIGbFcMw7/kSWF1rMTVAqs= - glob@7.1.3: version "7.1.3" resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.3.tgz#3960832d3f1574108342dafd3a67b332c0969df1" @@ -4464,13 +4322,6 @@ glob@^7.0.0, glob@^7.0.3, glob@^7.0.5, glob@^7.1.1, glob@^7.1.2, glob@^7.1.3, gl once "^1.3.0" path-is-absolute "^1.0.0" -global-dirs@^0.1.0: - version "0.1.1" - resolved "https://registry.yarnpkg.com/global-dirs/-/global-dirs-0.1.1.tgz#b319c0dd4607f353f3be9cca4c72fc148c49f445" - integrity sha1-sxnA3UYH81PzvpzKTHL8FIxJ9EU= - dependencies: - ini "^1.3.4" - global-modules@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/global-modules/-/global-modules-1.0.0.tgz#6d770f0eb523ac78164d72b5e71a8877265cc3ea" @@ -4549,37 +4400,6 @@ globby@^6.1.0: pify "^2.0.0" pinkie-promise "^2.0.0" -globby@^9.1.0: - version "9.2.0" - resolved "https://registry.yarnpkg.com/globby/-/globby-9.2.0.tgz#fd029a706c703d29bdd170f4b6db3a3f7a7cb63d" - integrity sha512-ollPHROa5mcxDEkwg6bPt3QbEf4pDQSNtd6JPL1YvOvAo/7/0VAm9TccUeoTmarjPw4pfUthSCqcyfNB1I3ZSg== - dependencies: - "@types/glob" "^7.1.1" - array-union "^1.0.2" - dir-glob "^2.2.2" - fast-glob "^2.2.6" - glob "^7.1.3" - ignore "^4.0.3" - pify "^4.0.1" - slash "^2.0.0" - -got@^6.7.1: - version "6.7.1" - resolved "https://registry.yarnpkg.com/got/-/got-6.7.1.tgz#240cd05785a9a18e561dc1b44b41c763ef1e8db0" - integrity sha1-JAzQV4WpoY5WHcG0S0HHY+8ejbA= - dependencies: - create-error-class "^3.0.0" - duplexer3 "^0.1.4" - get-stream "^3.0.0" - is-redirect "^1.0.0" - is-retry-allowed "^1.0.0" - is-stream "^1.0.0" - lowercase-keys "^1.0.0" - safe-buffer "^5.0.1" - timed-out "^4.0.0" - unzip-response "^2.0.1" - url-parse-lax "^1.0.0" - graceful-fs@^4.1.11, graceful-fs@^4.1.15, graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.2, graceful-fs@^4.2.4: version "4.2.4" resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.4.tgz#2256bde14d3632958c465ebc96dc467ca07a29fb" @@ -4988,11 +4808,6 @@ ignore-walk@3.0.3: dependencies: minimatch "^3.0.4" -ignore@^4.0.3: - version "4.0.6" - resolved "https://registry.yarnpkg.com/ignore/-/ignore-4.0.6.tgz#750e3db5862087b4737ebac8207ffd1ef27b25fc" - integrity sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg== - ignore@^5.1.1, ignore@^5.1.4: version "5.1.4" resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.1.4.tgz#84b7b3dbe64552b6ef0eca99f6743dbec6d97adf" @@ -5014,11 +4829,6 @@ import-fresh@^3.1.0: parent-module "^1.0.0" resolve-from "^4.0.0" -import-lazy@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/import-lazy/-/import-lazy-2.1.0.tgz#05698e3d45c88e8d7e9d92cb0584e77f096f3e43" - integrity sha1-BWmOPUXIjo1+nZLLBYTnfwlvPkM= - import-local@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/import-local/-/import-local-2.0.0.tgz#55070be38a5993cf18ef6db7e961f5bee5c5a09d" @@ -5090,7 +4900,7 @@ inherits@2.0.3: resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" integrity sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4= -ini@^1.3.2, ini@^1.3.4, ini@^1.3.5, ini@~1.3.0: +ini@^1.3.2, ini@^1.3.4, ini@^1.3.5: version "1.3.5" resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.5.tgz#eee25f56db1c9ec6085e0c22778083f596abf927" integrity sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw== @@ -5123,11 +4933,6 @@ ipaddr.js@1.9.1, ipaddr.js@^1.9.0: resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.9.1.tgz#bff38543eeb8984825079ff3a2a8e6cbd46781b3" integrity sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g== -irregular-plurals@^1.0.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/irregular-plurals/-/irregular-plurals-1.4.0.tgz#2ca9b033651111855412f16be5d77c62a458a766" - integrity sha1-LKmwM2UREYVUEvFr5dd8YqRYp2Y= - is-absolute-url@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/is-absolute-url/-/is-absolute-url-2.1.0.tgz#50530dfb84fcc9aa7dbe7852e83a37b93b9f2aa6" @@ -5320,14 +5125,6 @@ is-glob@^4.0.0, is-glob@^4.0.1, is-glob@~4.0.1: dependencies: is-extglob "^2.1.1" -is-installed-globally@^0.1.0: - version "0.1.0" - resolved "https://registry.yarnpkg.com/is-installed-globally/-/is-installed-globally-0.1.0.tgz#0dfd98f5a9111716dd535dda6492f67bf3d25a80" - integrity sha1-Df2Y9akRFxbdU13aZJL2e/PSWoA= - dependencies: - global-dirs "^0.1.0" - is-path-inside "^1.0.0" - is-interactive@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-interactive/-/is-interactive-1.0.0.tgz#cea6e6ae5c870a7b0a0004070b7b587e0252912e" @@ -5338,11 +5135,6 @@ is-module@^1.0.0: resolved "https://registry.yarnpkg.com/is-module/-/is-module-1.0.0.tgz#3258fb69f78c14d5b815d664336b4cffb6441591" integrity sha1-Mlj7afeMFNW4FdZkM2tM/7ZEFZE= -is-npm@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-npm/-/is-npm-1.0.0.tgz#f2fb63a65e4905b406c86072765a1a4dc793b9f4" - integrity sha1-8vtjpl5JBbQGyGBydloaTceTufQ= - is-number@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/is-number/-/is-number-3.0.0.tgz#24fd6201a4782cf50561c810276afc7d12d71195" @@ -5377,13 +5169,6 @@ is-path-in-cwd@^2.0.0: dependencies: is-path-inside "^2.1.0" -is-path-inside@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-1.0.1.tgz#8ef5b7de50437a3fdca6b4e865ef7aa55cb48036" - integrity sha1-jvW33lBDej/cprToZe96pVy0gDY= - dependencies: - path-is-inside "^1.0.1" - is-path-inside@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-2.1.0.tgz#7c9810587d659a40d27bcdb4d5616eab059494b2" @@ -5413,11 +5198,6 @@ is-potential-custom-element-name@^1.0.0: resolved "https://registry.yarnpkg.com/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.0.tgz#0c52e54bcca391bb2c494b21e8626d7336c6e397" integrity sha1-DFLlS8yjkbssSUsh6GJtczbG45c= -is-redirect@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-redirect/-/is-redirect-1.0.0.tgz#1d03dded53bd8db0f30c26e4f95d36fc7c87dc24" - integrity sha1-HQPd7VO9jbDzDCbk+V02/HyH3CQ= - is-reference@^1.1.2: version "1.1.4" resolved "https://registry.yarnpkg.com/is-reference/-/is-reference-1.1.4.tgz#3f95849886ddb70256a3e6d062b1a68c13c51427" @@ -5442,17 +5222,12 @@ is-resolvable@^1.0.0: resolved "https://registry.yarnpkg.com/is-resolvable/-/is-resolvable-1.1.0.tgz#fb18f87ce1feb925169c9a407c19318a3206ed88" integrity sha512-qgDYXFSR5WvEfuS5dMj6oTMEbrrSaM0CrFk2Yiq/gXnBvD9pMa2jGXxyhGLfvhZpuMZe18CJpFxAt3CRs42NMg== -is-retry-allowed@^1.0.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/is-retry-allowed/-/is-retry-allowed-1.2.0.tgz#d778488bd0a4666a3be8a1482b9f2baafedea8b4" - integrity sha512-RUbUeKwvm3XG2VYamhJL1xFktgjvPzL0Hq8C+6yrWIswDy3BIXGqCxhxkc30N9jqK311gVU137K8Ei55/zVJRg== - is-running@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/is-running/-/is-running-2.1.0.tgz#30a73ff5cc3854e4fc25490809e9f5abf8de09e0" integrity sha1-MKc/9cw4VOT8JUkICen1q/jeCeA= -is-stream@^1.0.0, is-stream@^1.1.0: +is-stream@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44" integrity sha1-EtSj3U5o4Lec6428hBc66A2RykQ= @@ -6169,13 +5944,6 @@ last-call-webpack-plugin@^3.0.0: lodash "^4.17.5" webpack-sources "^1.1.0" -latest-version@^3.0.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/latest-version/-/latest-version-3.1.0.tgz#a205383fea322b33b5ae3b18abee0dc2f356ee15" - integrity sha1-ogU4P+oyKzO1rjsYq+4NwvNW7hU= - dependencies: - package-json "^4.0.0" - leven@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/leven/-/leven-3.1.0.tgz#77891de834064cccba82ae7842bb6b14a13ed7f2" @@ -6449,7 +6217,7 @@ lodash@^4.17.11, lodash@^4.17.13, lodash@^4.17.14, lodash@^4.17.15, lodash@^4.17 resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.19.tgz#e48ddedbe30b3321783c5b4301fbd353bc1e4a4b" integrity sha512-JNvd8XER9GQX0v2qJgsaN/mzFCNA5BRe/j8JN9d+tWyGLSodKQHKFicdwNYzWwI3wjRnaKPsGj1XkBjx/F96DQ== -log-symbols@2.2.0, log-symbols@^2.0.0: +log-symbols@2.2.0: version "2.2.0" resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-2.2.0.tgz#5740e1c5d6f0dfda4ad9323b5332107ef6b4c40a" integrity sha512-VeIAFslyIerEJLXHziedo2basKbMKtTw3vfn5IzG0XTjhAVEJyNHnL2p7vc+wBDSdQuUpNw3M2u6xb9QsAY5Eg== @@ -6500,11 +6268,6 @@ lower-case@^2.0.1: dependencies: tslib "^1.10.0" -lowercase-keys@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/lowercase-keys/-/lowercase-keys-1.0.1.tgz#6f9e30b47084d971a7c820ff15a6c5167b74c26f" - integrity sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA== - lru-cache@^4.0.1: version "4.1.5" resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-4.1.5.tgz#8bbe50ea85bed59bc9e33dcab8235ee9bcf443cd" @@ -6527,13 +6290,6 @@ magic-string@^0.25.2, magic-string@^0.25.5, magic-string@^0.25.7: dependencies: sourcemap-codec "^1.4.4" -make-dir@^1.0.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-1.3.0.tgz#79c1033b80515bd6d24ec9933e860ca75ee27f0c" - integrity sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ== - dependencies: - pify "^3.0.0" - make-dir@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-2.1.0.tgz#5f0310e18b8be898cc07009295a30ae41e91e6f5" @@ -6664,21 +6420,6 @@ meow@^4.0.0: redent "^2.0.0" trim-newlines "^2.0.0" -meow@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/meow/-/meow-5.0.0.tgz#dfc73d63a9afc714a5e371760eb5c88b91078aa4" - integrity sha512-CbTqYU17ABaLefO8vCU153ZZlprKYWDljcndKKDCFcYQITzWCXZAVk4QMFZPgvzrnUQ3uItnIE/LoUOwrT15Ig== - dependencies: - camelcase-keys "^4.0.0" - decamelize-keys "^1.0.0" - loud-rejection "^1.0.0" - minimist-options "^3.0.1" - normalize-package-data "^2.3.4" - read-pkg-up "^3.0.0" - redent "^2.0.0" - trim-newlines "^2.0.0" - yargs-parser "^10.0.0" - meow@^7.0.0: version "7.0.0" resolved "https://registry.yarnpkg.com/meow/-/meow-7.0.0.tgz#2d21adc6df0e1b4659b2b2ce63852d954e5c440a" @@ -7470,16 +7211,6 @@ pac-resolver@^3.0.0: netmask "^1.0.6" thunkify "^2.1.2" -package-json@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/package-json/-/package-json-4.0.1.tgz#8869a0401253661c4c4ca3da6c2121ed555f5eed" - integrity sha1-iGmgQBJTZhxMTKPabCEh7VVfXu0= - dependencies: - got "^6.7.1" - registry-auth-token "^3.0.1" - registry-url "^3.0.3" - semver "^5.1.0" - pako@~1.0.5: version "1.0.11" resolved "https://registry.yarnpkg.com/pako/-/pako-1.0.11.tgz#6c9599d340d54dfd3946380252a35705a6b992bf" @@ -7611,7 +7342,7 @@ path-is-absolute@^1.0.0: resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18= -path-is-inside@1.0.2, path-is-inside@^1.0.1, path-is-inside@^1.0.2: +path-is-inside@1.0.2, path-is-inside@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/path-is-inside/-/path-is-inside-1.0.2.tgz#365417dede44430d1c11af61027facf074bdfc53" integrity sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM= @@ -7757,13 +7488,6 @@ please-upgrade-node@^3.2.0: dependencies: semver-compare "^1.0.0" -plur@^2.1.2: - version "2.1.2" - resolved "https://registry.yarnpkg.com/plur/-/plur-2.1.2.tgz#7482452c1a0f508e3e344eaec312c91c29dc655a" - integrity sha1-dIJFLBoPUI4+NE6uwxLJHCncZVo= - dependencies: - irregular-plurals "^1.0.0" - pnp-webpack-plugin@^1.6.4: version "1.6.4" resolved "https://registry.yarnpkg.com/pnp-webpack-plugin/-/pnp-webpack-plugin-1.6.4.tgz#c9711ac4dc48a685dabafc86f8b6dd9f8df84149" @@ -8122,11 +7846,6 @@ prelude-ls@~1.1.2: resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54" integrity sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ= -prepend-http@^1.0.1: - version "1.0.4" - resolved "https://registry.yarnpkg.com/prepend-http/-/prepend-http-1.0.4.tgz#d4f4562b0ce3696e41ac52d0e002e57a635dc6dc" - integrity sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw= - prettier@^2.0.5: version "2.0.5" resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.0.5.tgz#d6d56282455243f2f92cc1716692c08aa31522d4" @@ -8369,16 +8088,6 @@ raw-body@^2.2.0: iconv-lite "0.4.24" unpipe "1.0.0" -rc@^1.0.1, rc@^1.1.6: - version "1.2.8" - resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.8.tgz#cd924bf5200a075b83c188cd6b9e211b7fc0d3ed" - integrity sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw== - dependencies: - deep-extend "^0.6.0" - ini "~1.3.0" - minimist "^1.2.0" - strip-json-comments "~2.0.1" - react-is@^16.12.0: version "16.13.1" resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.13.1.tgz#789729a4dc36de2999dc156dd6c1d9c18cea56a4" @@ -8400,14 +8109,6 @@ read-pkg-up@^3.0.0: find-up "^2.0.0" read-pkg "^3.0.0" -read-pkg-up@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-4.0.0.tgz#1b221c6088ba7799601c808f91161c66e58f8978" - integrity sha512-6etQSH7nJGsK0RbG/2TeDzZFa8shjQ1um+SwQQ5cwKy0dhSXdOncEhb1CPpvQG4h7FyOV6EB6YlV0yJvZQNAkA== - dependencies: - find-up "^3.0.0" - read-pkg "^3.0.0" - read-pkg-up@^7.0.1: version "7.0.1" resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-7.0.1.tgz#f3a6135758459733ae2b95638056e1854e7ef507" @@ -8545,21 +8246,6 @@ regexp.prototype.flags@^1.2.0: define-properties "^1.1.3" es-abstract "^1.17.0-next.1" -registry-auth-token@^3.0.1: - version "3.4.0" - resolved "https://registry.yarnpkg.com/registry-auth-token/-/registry-auth-token-3.4.0.tgz#d7446815433f5d5ed6431cd5dca21048f66b397e" - integrity sha512-4LM6Fw8eBQdwMYcES4yTnn2TqIasbXuwDx3um+QRs7S55aMKCBKBxvPXl2RiUjHwuJLTyYfxSpmfSAjQpcuP+A== - dependencies: - rc "^1.1.6" - safe-buffer "^5.0.1" - -registry-url@^3.0.3: - version "3.1.0" - resolved "https://registry.yarnpkg.com/registry-url/-/registry-url-3.1.0.tgz#3d4ef870f73dde1d77f0cf9a381432444e174942" - integrity sha1-PU74cPc93h138M+aOBQyRE4XSUI= - dependencies: - rc "^1.0.1" - relateurl@^0.2.7: version "0.2.7" resolved "https://registry.yarnpkg.com/relateurl/-/relateurl-0.2.7.tgz#54dbf377e51440aca90a4cd274600d3ff2d888a9" @@ -8936,14 +8622,7 @@ semver-compare@^1.0.0: resolved "https://registry.yarnpkg.com/semver-compare/-/semver-compare-1.0.0.tgz#0dee216a1c941ab37e9efb1788f6afc5ff5537fc" integrity sha1-De4hahyUGrN+nvsXiPavxf9VN/w= -semver-diff@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/semver-diff/-/semver-diff-2.1.0.tgz#4bbb8437c8d37e4b0cf1a68fd726ec6d645d6d36" - integrity sha1-S7uEN8jTfksM8aaP1ybsbWRdbTY= - dependencies: - semver "^5.0.3" - -"semver@2 || 3 || 4 || 5", semver@^5.0.3, semver@^5.1.0, semver@^5.4.1, semver@^5.5.0, semver@^5.6.0, semver@^5.7.0: +"semver@2 || 3 || 4 || 5", semver@^5.4.1, semver@^5.5.0, semver@^5.6.0, semver@^5.7.0: version "5.7.1" resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== @@ -9136,11 +8815,6 @@ size-limit@^4.5.5: ora "^4.0.4" read-pkg-up "^7.0.1" -slash@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/slash/-/slash-2.0.0.tgz#de552851a1759df3a8f206535442f5ec4ddeab44" - integrity sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A== - slash@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/slash/-/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634" @@ -9483,7 +9157,7 @@ string-length@^4.0.1: char-regex "^1.0.2" strip-ansi "^6.0.0" -"string-width@^1.0.2 || 2", string-width@^2.0.0, string-width@^2.1.1: +"string-width@^1.0.2 || 2": version "2.1.1" resolved "https://registry.yarnpkg.com/string-width/-/string-width-2.1.1.tgz#ab93f27a8dc13d28cac815c462143a6d9012ae9e" integrity sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw== @@ -9645,7 +9319,7 @@ strip-indent@^3.0.0: dependencies: min-indent "^1.0.0" -strip-json-comments@2.0.1, strip-json-comments@~2.0.1: +strip-json-comments@2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" integrity sha1-PFMZQukIwml8DsNEhYwobHygpgo= @@ -9776,13 +9450,6 @@ tempfile@^3.0.0: temp-dir "^2.0.0" uuid "^3.3.2" -term-size@^1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/term-size/-/term-size-1.2.0.tgz#458b83887f288fc56d6fffbfad262e26638efa69" - integrity sha1-RYuDiH8oj8Vtb/+/rSYuJmOO+mk= - dependencies: - execa "^0.7.0" - terminal-link@^2.0.0: version "2.1.1" resolved "https://registry.yarnpkg.com/terminal-link/-/terminal-link-2.1.1.tgz#14a64a27ab3c0df933ea546fba55f2d078edc994" @@ -9864,11 +9531,6 @@ thunky@^1.0.2: resolved "https://registry.yarnpkg.com/thunky/-/thunky-1.1.0.tgz#5abaf714a9405db0504732bbccd2cedd9ef9537d" integrity sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA== -timed-out@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/timed-out/-/timed-out-4.0.1.tgz#f32eacac5a175bea25d7fab565ab3ed8741ef56f" - integrity sha1-8y6srFoXW+ol1/q1Zas+2HQe9W8= - timers-browserify@^2.0.4: version "2.0.11" resolved "https://registry.yarnpkg.com/timers-browserify/-/timers-browserify-2.0.11.tgz#800b1f3eee272e5bc53ee465a04d0e804c31211f" @@ -10025,18 +9687,6 @@ ts-pnp@^1.1.6: resolved "https://registry.yarnpkg.com/ts-pnp/-/ts-pnp-1.2.0.tgz#a500ad084b0798f1c3071af391e65912c86bca92" integrity sha512-csd+vJOb/gkzvcCHgTGSChYpy5f1/XKNsmvBGO4JXS+z1v2HobugDz4s1IeFXM3wZB44uczs+eazB5Q/ccdhQw== -tsd@^0.11.0: - version "0.11.0" - resolved "https://registry.yarnpkg.com/tsd/-/tsd-0.11.0.tgz#ede8b8e85850845b753fff7eaaf68dbd3673700b" - integrity sha512-klKMNC0KRzUIaLJG8XqkvH/9rKwYX74xpqJBN8spWjYUDojAesd6AfDCT5dray+yhLfTGkem7O3nU6i4KwzNDw== - dependencies: - eslint-formatter-pretty "^1.3.0" - globby "^9.1.0" - meow "^5.0.0" - path-exists "^3.0.0" - read-pkg-up "^4.0.0" - update-notifier "^2.5.0" - tslib@1.11.2, tslib@^1.10.0, tslib@^1.9.0: version "1.11.2" resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.11.2.tgz#9c79d83272c9a7aaf166f73915c9667ecdde3cc9" @@ -10167,13 +9817,6 @@ unique-slug@^2.0.0: dependencies: imurmurhash "^0.1.4" -unique-string@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/unique-string/-/unique-string-1.0.0.tgz#9e1057cca851abb93398f8b33ae187b99caec11a" - integrity sha1-nhBXzKhRq7kzmPizOuGHuZyuwRo= - dependencies: - crypto-random-string "^1.0.0" - universalify@^0.1.0: version "0.1.2" resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.1.2.tgz#b646f69be3942dabcecc9d6639c80dc105efaa66" @@ -10197,32 +9840,11 @@ unset-value@^1.0.0: has-value "^0.3.1" isobject "^3.0.0" -unzip-response@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/unzip-response/-/unzip-response-2.0.1.tgz#d2f0f737d16b0615e72a6935ed04214572d56f97" - integrity sha1-0vD3N9FrBhXnKmk17QQhRXLVb5c= - upath@^1.1.1: version "1.2.0" resolved "https://registry.yarnpkg.com/upath/-/upath-1.2.0.tgz#8f66dbcd55a883acdae4408af8b035a5044c1894" integrity sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg== -update-notifier@^2.5.0: - version "2.5.0" - resolved "https://registry.yarnpkg.com/update-notifier/-/update-notifier-2.5.0.tgz#d0744593e13f161e406acb1d9408b72cad08aff6" - integrity sha512-gwMdhgJHGuj/+wHJJs9e6PcCszpxR1b236igrOkUofGhqJuG+amlIKwApH1IW1WWl7ovZxsX49lMBWLxSdm5Dw== - dependencies: - boxen "^1.2.1" - chalk "^2.0.1" - configstore "^3.0.0" - import-lazy "^2.1.0" - is-ci "^1.0.10" - is-installed-globally "^0.1.0" - is-npm "^1.0.0" - latest-version "^3.0.0" - semver-diff "^2.0.0" - xdg-basedir "^3.0.0" - uri-js@^4.2.2: version "4.2.2" resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.2.2.tgz#94c540e1ff772956e2299507c010aea6c8838eb0" @@ -10235,13 +9857,6 @@ urix@^0.1.0: resolved "https://registry.yarnpkg.com/urix/-/urix-0.1.0.tgz#da937f7a62e21fec1fd18d49b35c2935067a6c72" integrity sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI= -url-parse-lax@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/url-parse-lax/-/url-parse-lax-1.0.0.tgz#7af8f303645e9bd79a272e7a14ac68bc0609da73" - integrity sha1-evjzA2Rem9eaJy56FKxovAYJ2nM= - dependencies: - prepend-http "^1.0.1" - url-parse@^1.4.3: version "1.4.7" resolved "https://registry.yarnpkg.com/url-parse/-/url-parse-1.4.7.tgz#a8a83535e8c00a316e403a5db4ac1b9b853ae278" @@ -10659,13 +10274,6 @@ wide-align@1.1.3: dependencies: string-width "^1.0.2 || 2" -widest-line@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/widest-line/-/widest-line-2.0.1.tgz#7438764730ec7ef4381ce4df82fb98a53142a3fc" - integrity sha512-Ba5m9/Fa4Xt9eb2ELXt77JxVDV8w7qQrH0zS/TWSJdLyAwQjWoOzpzj5lwVftDz6n/EOu3tNACS84v509qwnJA== - dependencies: - string-width "^2.1.1" - word-wrap@~1.2.3: version "1.2.3" resolved "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.3.tgz#610636f6b1f703891bd34771ccb17fb93b47079c" @@ -10706,15 +10314,6 @@ wrappy@1: resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8= -write-file-atomic@^2.0.0: - version "2.4.3" - resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-2.4.3.tgz#1fd2e9ae1df3e75b8d8c367443c692d4ca81f481" - integrity sha512-GaETH5wwsX+GcnzhPgKcKjJ6M2Cq3/iZp1WyY/X1CSqrW+jVNM9Y7D8EC2sM4ZG/V8wZlSniJnCKWPmBYAucRQ== - dependencies: - graceful-fs "^4.1.11" - imurmurhash "^0.1.4" - signal-exit "^3.0.2" - write-file-atomic@^3.0.0: version "3.0.3" resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-3.0.3.tgz#56bd5c5a5c70481cd19c571bd39ab965a5de56e8" @@ -10737,11 +10336,6 @@ ws@^7.2.3: resolved "https://registry.yarnpkg.com/ws/-/ws-7.3.0.tgz#4b2f7f219b3d3737bc1a2fbf145d825b94d38ffd" integrity sha512-iFtXzngZVXPGgpTlP1rBqsUK82p9tKqsWRPg5L56egiljujJT3vGAYnHANvFxBieXrTFavhzhxW52jnaWV+w2w== -xdg-basedir@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/xdg-basedir/-/xdg-basedir-3.0.0.tgz#496b2cc109eca8dbacfe2dc72b603c17c5870ad4" - integrity sha1-SWsswQnsqNus/i3HK2A8F8WHCtQ= - xml-name-validator@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/xml-name-validator/-/xml-name-validator-3.0.0.tgz#6ae73e06de4d8c6e47f9fb181f78d648ad457c6a" @@ -10800,13 +10394,6 @@ yargs-parser@18.x, yargs-parser@^18.1.1, yargs-parser@^18.1.3: camelcase "^5.0.0" decamelize "^1.2.0" -yargs-parser@^10.0.0: - version "10.1.0" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-10.1.0.tgz#7202265b89f7e9e9f2e5765e0fe735a905edbaa8" - integrity sha512-VCIyR1wJoEBZUqk5PA+oOBF6ypbwh5aNB3I50guxAL/quggdfs4TtNHQrSazFA3fYZ+tEqfs0zIGlv0c/rgjbQ== - dependencies: - camelcase "^4.1.0" - yargs-unparser@1.6.0: version "1.6.0" resolved "https://registry.yarnpkg.com/yargs-unparser/-/yargs-unparser-1.6.0.tgz#ef25c2c769ff6bd09e4b0f9d7c605fb27846ea9f" From 42d3bf265027b60ef7cf016c0b30ee8df7eed694 Mon Sep 17 00:00:00 2001 From: Eduardo San Martin Morote Date: Wed, 5 Aug 2020 14:12:28 +0200 Subject: [PATCH 0008/1422] docs: add rfc links in readme --- README.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index 92a4cff50..c84a7f4b2 100644 --- a/README.md +++ b/README.md @@ -45,7 +45,7 @@ router.isReady().then(() => app.mount('#app')) ``` Otherwise there will be an initial transition as if you provided the `appear` prop to `transition` because the router displays its initial location (nothing) and then displays the first location. This happens because navigations are all asynchronous now. **If you have navigation guards upon the initial navigation**, you might not want to block the app render until they are resolved. -- On SSR, you need to manually pass the appropriate history by using a ternary: +- On SSR, you need to manually pass the appropriate history: ```js // router.js let history = isServer ? createMemoryHistory() : createWebHistory() @@ -56,7 +56,7 @@ // resolve the request }) ``` -- The object returned in `scrollBehavior` is now similar to [`ScrollToOptions`](https://developer.mozilla.org/en-US/docs/Web/API/ScrollToOptions): `x` is renamed to `left` and `y` is renamed to `top`. +- The object returned in `scrollBehavior` is now similar to [`ScrollToOptions`](https://developer.mozilla.org/en-US/docs/Web/API/ScrollToOptions): `x` is renamed to `left` and `y` is renamed to `top`. See [RFC](https://github.com/vuejs/rfcs/blob/master/active-rfcs/0035-router-scroll-position.md). - `transition` and `keep-alive` must now be used **inside** of `RouterView` via the `v-slot` API: ```vue @@ -67,10 +67,10 @@ ``` - See more on the [KeepAlive](https://github.com/vuejs/vue-router-next/blob/master/e2e/keep-alive/index.ts) and the [Transition](https://github.com/vuejs/vue-router-next/blob/master/e2e/transitions/index.ts) examples. + See more on the [KeepAlive](https://github.com/vuejs/vue-router-next/blob/master/e2e/keep-alive/index.ts) and the [Transition](https://github.com/vuejs/vue-router-next/blob/master/e2e/transitions/index.ts) examples. See [RFC](https://github.com/vuejs/rfcs/blob/master/active-rfcs/0034-router-view-keep-alive-transitions.md). - `parent` is removed from Route locations (`this.$route` and object returned by `router.resolve`). You can still access it via the `matched` array: ```js - const parent = this.$route.matched[this.$route.matched.length -1] + const parent = this.$route.matched[this.$route.matched.length - 2] ``` ### Typings From 1cefed1db11942a5e245d65bc10b1f25f92a0f86 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Wed, 5 Aug 2020 14:30:04 +0200 Subject: [PATCH 0009/1422] build(deps-dev): bump css-loader from 3.6.0 to 4.2.0 (#400) Bumps [css-loader](https://github.com/webpack-contrib/css-loader) from 3.6.0 to 4.2.0. - [Release notes](https://github.com/webpack-contrib/css-loader/releases) - [Changelog](https://github.com/webpack-contrib/css-loader/blob/master/CHANGELOG.md) - [Commits](https://github.com/webpack-contrib/css-loader/compare/v3.6.0...v4.2.0) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> --- package.json | 2 +- yarn.lock | 35 +++++++++++++++++++++++++++-------- 2 files changed, 28 insertions(+), 9 deletions(-) diff --git a/package.json b/package.json index 629132365..600569de6 100644 --- a/package.json +++ b/package.json @@ -84,7 +84,7 @@ "chromedriver": "^83.0.1", "codecov": "^3.7.2", "conventional-changelog-cli": "^2.0.34", - "css-loader": "^3.6.0", + "css-loader": "^4.2.0", "dotenv": "^8.2.0", "faked-promise": "^2.2.2", "html-webpack-plugin": "^4.3.0", diff --git a/yarn.lock b/yarn.lock index a33aa952b..220ca6ac4 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2818,6 +2818,25 @@ css-loader@^3.6.0: schema-utils "^2.7.0" semver "^6.3.0" +css-loader@^4.2.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/css-loader/-/css-loader-4.2.0.tgz#b57efb92ac8f0cd85bf92d89df9634ef1f51b8bf" + integrity sha512-ko7a9b0iFpWtk9eSI/C8IICvZeGtYnjxYjw45rJprokXj/+kBd/siX4vAIBq9Uij8Jubc4jL1EvSnTjCEwaHSw== + dependencies: + camelcase "^6.0.0" + cssesc "^3.0.0" + icss-utils "^4.1.1" + loader-utils "^2.0.0" + normalize-path "^3.0.0" + postcss "^7.0.32" + postcss-modules-extract-imports "^2.0.0" + postcss-modules-local-by-default "^3.0.3" + postcss-modules-scope "^2.2.0" + postcss-modules-values "^3.0.0" + postcss-value-parser "^4.1.0" + schema-utils "^2.7.0" + semver "^7.3.2" + css-select-base-adapter@^0.1.1: version "0.1.1" resolved "https://registry.yarnpkg.com/css-select-base-adapter/-/css-select-base-adapter-0.1.1.tgz#3b2ff4972cc362ab88561507a95408a1432135d7" @@ -7634,15 +7653,15 @@ postcss-modules-extract-imports@^2.0.0: dependencies: postcss "^7.0.5" -postcss-modules-local-by-default@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/postcss-modules-local-by-default/-/postcss-modules-local-by-default-3.0.2.tgz#e8a6561be914aaf3c052876377524ca90dbb7915" - integrity sha512-jM/V8eqM4oJ/22j0gx4jrp63GSvDH6v86OqyTHHUvk4/k1vceipZsaymiZ5PvocqZOl5SFHiFJqjs3la0wnfIQ== +postcss-modules-local-by-default@^3.0.2, postcss-modules-local-by-default@^3.0.3: + version "3.0.3" + resolved "https://registry.yarnpkg.com/postcss-modules-local-by-default/-/postcss-modules-local-by-default-3.0.3.tgz#bb14e0cc78279d504dbdcbfd7e0ca28993ffbbb0" + integrity sha512-e3xDq+LotiGesympRlKNgaJ0PCzoUIdpH0dj47iWAui/kyTgh3CiAr1qP54uodmJhl6p9rN6BoNcdEDVJx9RDw== dependencies: icss-utils "^4.1.1" - postcss "^7.0.16" + postcss "^7.0.32" postcss-selector-parser "^6.0.2" - postcss-value-parser "^4.0.0" + postcss-value-parser "^4.1.0" postcss-modules-scope@^2.2.0: version "2.2.0" @@ -7827,12 +7846,12 @@ postcss-value-parser@^3.0.0: resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz#9ff822547e2893213cf1c30efa51ac5fd1ba8281" integrity sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ== -postcss-value-parser@^4.0.0, postcss-value-parser@^4.0.2, postcss-value-parser@^4.1.0: +postcss-value-parser@^4.0.2, postcss-value-parser@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-4.1.0.tgz#443f6a20ced6481a2bda4fa8532a6e55d789a2cb" integrity sha512-97DXOFbQJhk71ne5/Mt6cOu6yxsSfM0QGQyl0L25Gca4yGWEGJaig7l7gbCX623VqTBNGLRLaVUCnNkcedlRSQ== -postcss@^7.0.0, postcss@^7.0.1, postcss@^7.0.14, postcss@^7.0.16, postcss@^7.0.27, postcss@^7.0.32, postcss@^7.0.5, postcss@^7.0.6: +postcss@^7.0.0, postcss@^7.0.1, postcss@^7.0.14, postcss@^7.0.27, postcss@^7.0.32, postcss@^7.0.5, postcss@^7.0.6: version "7.0.32" resolved "https://registry.yarnpkg.com/postcss/-/postcss-7.0.32.tgz#4310d6ee347053da3433db2be492883d62cec59d" integrity sha512-03eXong5NLnNCD05xscnGKGDZ98CyzoqPSMjOe6SuoQY7Z2hIj0Ld1g/O/UQRuOle2aRtiIRDg9tDcTGAkLfKw== From 5a4cc471719c2d57d500ebb724738778a38d336b Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Wed, 5 Aug 2020 14:30:32 +0200 Subject: [PATCH 0010/1422] build(deps-dev): bump vue, @vue/compiler-sfc and @vue/server-renderer (#399) Bumps [vue](https://github.com/vuejs/vue), [@vue/compiler-sfc](https://github.com/vuejs/vue-next) and [@vue/server-renderer](https://github.com/vuejs/vue-next). These dependencies needed to be updated together. Updates `vue` from 3.0.0-rc.2 to 3.0.0-rc.5 - [Release notes](https://github.com/vuejs/vue/releases) - [Commits](https://github.com/vuejs/vue/commits) Updates `@vue/compiler-sfc` from 3.0.0-rc.2 to 3.0.0-rc.5 - [Release notes](https://github.com/vuejs/vue-next/releases) - [Changelog](https://github.com/vuejs/vue-next/blob/master/CHANGELOG.md) - [Commits](https://github.com/vuejs/vue-next/compare/v3.0.0-rc.2...v3.0.0-rc.5) Updates `@vue/server-renderer` from 3.0.0-rc.2 to 3.0.0-rc.5 - [Release notes](https://github.com/vuejs/vue-next/releases) - [Changelog](https://github.com/vuejs/vue-next/blob/master/CHANGELOG.md) - [Commits](https://github.com/vuejs/vue-next/compare/v3.0.0-rc.2...v3.0.0-rc.5) Signed-off-by: dependabot-preview[bot] Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com> --- package.json | 8 +-- yarn.lock | 138 +++++++++++++++++++++++---------------------------- 2 files changed, 66 insertions(+), 80 deletions(-) diff --git a/package.json b/package.json index 3e7227262..820d07070 100644 --- a/package.json +++ b/package.json @@ -58,7 +58,7 @@ } ], "peerDependencies": { - "vue": "^3.0.0-beta.20" + "vue": "^3.0.0-rc.5" }, "vetur": { "tags": "vetur/tags.json", @@ -76,8 +76,8 @@ "@types/jsdom": "^16.2.3", "@types/webpack": "^4.41.21", "@types/webpack-env": "^1.15.2", - "@vue/compiler-sfc": "3.0.0-rc.2", - "@vue/server-renderer": "^3.0.0-rc.2", + "@vue/compiler-sfc": "3.0.0-rc.5", + "@vue/server-renderer": "^3.0.0-rc.5", "axios": "^0.19.2", "browserstack-local": "^1.4.5", "chalk": "^4.1.0", @@ -105,7 +105,7 @@ "ts-loader": "^8.0.2", "ts-node": "^8.10.2", "typescript": "^3.9.7", - "vue": "^3.0.0-beta.20", + "vue": "^3.0.0-rc.5", "vue-loader": "^16.0.0-beta.4", "webpack": "^4.44.1", "webpack-bundle-analyzer": "^3.8.0", diff --git a/yarn.lock b/yarn.lock index f7190b1a5..1ea3db90a 100644 --- a/yarn.lock +++ b/yarn.lock @@ -121,7 +121,7 @@ dependencies: "@babel/types" "^7.8.3" -"@babel/helper-validator-identifier@^7.10.4", "@babel/helper-validator-identifier@^7.9.5": +"@babel/helper-validator-identifier@^7.10.4": version "7.10.4" resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.10.4.tgz#a78c7a7251e01f616512d31b10adcf52ada5e0d2" integrity sha512-3U9y+43hz7ZM+rzG24Qe2mufW5KhvFg/NhnNph+i9mgCtdTCtMJuI1TMkrIUiK7Ix4PYlRF9I5dhqaLYA/ADXw== @@ -149,12 +149,7 @@ chalk "^2.0.0" js-tokens "^4.0.0" -"@babel/parser@^7.1.0", "@babel/parser@^7.9.6": - version "7.9.6" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.9.6.tgz#3b1bbb30dabe600cd72db58720998376ff653bc7" - integrity sha512-AoeIEJn8vt+d/6+PXDRPaksYhnlbMIiejioBZvvMQsOjW/JYK6k/0dKnvvP3EhK5GfMBWDPtrxRtegWdAcdq9Q== - -"@babel/parser@^7.10.4", "@babel/parser@^7.8.6": +"@babel/parser@^7.1.0", "@babel/parser@^7.10.4", "@babel/parser@^7.8.6", "@babel/parser@^7.9.6": version "7.10.5" resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.10.5.tgz#e7c6bf5a7deff957cec9f04b551e2762909d826b" integrity sha512-wfryxy4bE1UivvQKSQDU4/X6dr+i8bctjUjj8Zyt3DQy7NtPizJXT8M52nqpNKL+nq2PW8lxk4ZqLj0fD4B4hQ== @@ -260,16 +255,7 @@ globals "^11.1.0" lodash "^4.17.13" -"@babel/types@^7.0.0", "@babel/types@^7.3.0", "@babel/types@^7.3.3", "@babel/types@^7.8.3", "@babel/types@^7.9.0", "@babel/types@^7.9.5", "@babel/types@^7.9.6": - version "7.9.6" - resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.9.6.tgz#2c5502b427251e9de1bd2dff95add646d95cc9f7" - integrity sha512-qxXzvBO//jO9ZnoasKF1uJzHd2+M6Q2ZPIVfnFps8JJvXy0ZBbwbNOmE6SGIY5XOY6d1Bo5lb9d9RJ8nv3WSeA== - dependencies: - "@babel/helper-validator-identifier" "^7.9.5" - lodash "^4.17.13" - to-fast-properties "^2.0.0" - -"@babel/types@^7.10.4", "@babel/types@^7.8.6": +"@babel/types@^7.0.0", "@babel/types@^7.10.4", "@babel/types@^7.3.0", "@babel/types@^7.3.3", "@babel/types@^7.8.3", "@babel/types@^7.8.6", "@babel/types@^7.9.0", "@babel/types@^7.9.5", "@babel/types@^7.9.6": version "7.10.5" resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.10.5.tgz#d88ae7e2fde86bfbfe851d4d81afa70a997b5d15" integrity sha512-ixV66KWfCI6GKoA/2H9v6bQdbfXEwwpOdQ8cRvb4F+eyvhlaHxWFMQB4+3d9QFJXZsiiiqVrewNV0DFEQpyT4Q== @@ -992,36 +978,36 @@ dependencies: "@types/node" "*" -"@vue/compiler-core@3.0.0-rc.2": - version "3.0.0-rc.2" - resolved "https://registry.yarnpkg.com/@vue/compiler-core/-/compiler-core-3.0.0-rc.2.tgz#6005b793ac12d2d053590871faa04a26997ba2eb" - integrity sha512-FPPNTd20Y8U5RWyXHWOC22gpSnaFz8V2zDq+f1AQ6xTTRD09qFw7wJ8T50mnVgeXgYbACMnD+RXOAAwYfB6ijQ== +"@vue/compiler-core@3.0.0-rc.5": + version "3.0.0-rc.5" + resolved "https://registry.yarnpkg.com/@vue/compiler-core/-/compiler-core-3.0.0-rc.5.tgz#dd4f1816fcae34a81bc60e584f97993cad284d54" + integrity sha512-dNz5AObEYg0Oglw3emIsBhTAOVfObrfxDaAzR0UTRDDq+Ohfr6KTSaVQAH88Ym+oa08ZlLZBFc6ARe9doAOIxg== dependencies: "@babel/parser" "^7.10.4" "@babel/types" "^7.10.4" - "@vue/shared" "3.0.0-rc.2" + "@vue/shared" "3.0.0-rc.5" estree-walker "^2.0.1" source-map "^0.6.1" -"@vue/compiler-dom@3.0.0-rc.2": - version "3.0.0-rc.2" - resolved "https://registry.yarnpkg.com/@vue/compiler-dom/-/compiler-dom-3.0.0-rc.2.tgz#e56ea950d946ab316755fd1fcabfa627c6741ba3" - integrity sha512-38iflPPoZtbPBBLDI9q2xP3MQAnUIQFs9aRwSMJqDI0PxEvB2J9O6o5bBtN7QIorL5KnxDO9LLz+RuCgmFIQVQ== +"@vue/compiler-dom@3.0.0-rc.5": + version "3.0.0-rc.5" + resolved "https://registry.yarnpkg.com/@vue/compiler-dom/-/compiler-dom-3.0.0-rc.5.tgz#83905e8601123a3654b90fbd80708a16530ce21a" + integrity sha512-z8n+R1GhFnWuKURLYxfVSEfP7nSNM91qteobxwys55fhlZZuReouMnUwgrn+ois/IL6RdFlT9H+n4+N6yLrdJA== dependencies: - "@vue/compiler-core" "3.0.0-rc.2" - "@vue/shared" "3.0.0-rc.2" + "@vue/compiler-core" "3.0.0-rc.5" + "@vue/shared" "3.0.0-rc.5" -"@vue/compiler-sfc@3.0.0-rc.2": - version "3.0.0-rc.2" - resolved "https://registry.yarnpkg.com/@vue/compiler-sfc/-/compiler-sfc-3.0.0-rc.2.tgz#c92ef9ddb6fdd37d1c5a5dba53af7e4384aa9e31" - integrity sha512-DFQOVrUzkcjbv65wJEjRI7v//9cAXoeOBj2nx527287DMNWBQK9WuFyNVt1+U1hTOjRohL6VBFtSbw8fy21s6A== +"@vue/compiler-sfc@3.0.0-rc.5": + version "3.0.0-rc.5" + resolved "https://registry.yarnpkg.com/@vue/compiler-sfc/-/compiler-sfc-3.0.0-rc.5.tgz#374e52a6fbf8fb9aee1213026050a0f1c496fecf" + integrity sha512-huoIFEfFCJxHcpoByAUQti7CIwJdHPLJXKuy2HG7J1B+IEKugtBdF50CLH35ZD8dWM0nyOMFFqTbO7i6CCjL3Q== dependencies: "@babel/parser" "^7.10.4" "@babel/types" "^7.10.4" - "@vue/compiler-core" "3.0.0-rc.2" - "@vue/compiler-dom" "3.0.0-rc.2" - "@vue/compiler-ssr" "3.0.0-rc.2" - "@vue/shared" "3.0.0-rc.2" + "@vue/compiler-core" "3.0.0-rc.5" + "@vue/compiler-dom" "3.0.0-rc.5" + "@vue/compiler-ssr" "3.0.0-rc.5" + "@vue/shared" "3.0.0-rc.5" consolidate "^0.15.1" estree-walker "^2.0.1" hash-sum "^2.0.0" @@ -1033,50 +1019,50 @@ postcss-selector-parser "^6.0.2" source-map "^0.6.1" -"@vue/compiler-ssr@3.0.0-rc.2": - version "3.0.0-rc.2" - resolved "https://registry.yarnpkg.com/@vue/compiler-ssr/-/compiler-ssr-3.0.0-rc.2.tgz#94985ddfefa7db5a2a21a6443b252b1543acb0a1" - integrity sha512-JrRzRRxqF7mz2dRBaRZTuEDHI92Db1BxKtCm5gAN1/qGcQHioWrQC7FXdYaT4LFcQQ9FrEvBtHxs4JNFoGFQrA== +"@vue/compiler-ssr@3.0.0-rc.5": + version "3.0.0-rc.5" + resolved "https://registry.yarnpkg.com/@vue/compiler-ssr/-/compiler-ssr-3.0.0-rc.5.tgz#878406c59daff362ecdcb199fb9467a769ca8de5" + integrity sha512-OU5Vl2+bCDMImS9OeCVnl4lfxZ3/sopdwX2SrUWVKQvCxmmmlyWvoVkC6nNGCs/MrOmIMhKmL6etgzLTWyCkUg== dependencies: - "@vue/compiler-dom" "3.0.0-rc.2" - "@vue/shared" "3.0.0-rc.2" + "@vue/compiler-dom" "3.0.0-rc.5" + "@vue/shared" "3.0.0-rc.5" -"@vue/reactivity@3.0.0-rc.2": - version "3.0.0-rc.2" - resolved "https://registry.yarnpkg.com/@vue/reactivity/-/reactivity-3.0.0-rc.2.tgz#c019c996a9b8f9cdf7424934773b1e0ca96a91a9" - integrity sha512-kgnBKzX74sV/Zc2iS5Zp+QwlctMBplsw7LAogGr2K2BrkfjqXSBr4yag/m8poGmceVMNm6/wFsWrOEnbL0hyZQ== +"@vue/reactivity@3.0.0-rc.5": + version "3.0.0-rc.5" + resolved "https://registry.yarnpkg.com/@vue/reactivity/-/reactivity-3.0.0-rc.5.tgz#45cff8d839d7ad130b1e499239090050fdecff13" + integrity sha512-oe9C+1jtWUdYL/iNc0OPWbwgOk2rOW2uQ+exx3I6Jo6PKOmnAiPkMElalf9vRnO53rnUphVecMp8BlTJvcNgDw== dependencies: - "@vue/shared" "3.0.0-rc.2" + "@vue/shared" "3.0.0-rc.5" -"@vue/runtime-core@3.0.0-rc.2": - version "3.0.0-rc.2" - resolved "https://registry.yarnpkg.com/@vue/runtime-core/-/runtime-core-3.0.0-rc.2.tgz#ba909da4eebdf319a4d49c0147a825afa9179a9f" - integrity sha512-NNeFIkW0IQCuqp77XcgqsYdME7wr6ab6RcSmu9ZSKcEZbqhL+0PVioCjfyMW6Sa+35ng6PegocNbOp++vXIQ9g== +"@vue/runtime-core@3.0.0-rc.5": + version "3.0.0-rc.5" + resolved "https://registry.yarnpkg.com/@vue/runtime-core/-/runtime-core-3.0.0-rc.5.tgz#dd59af3a5fc089d1cdc05a657320c0dc17e5c362" + integrity sha512-MRIWreFigxdRuI2moFociUL5rVBfgYPrT7rWfQ0XfOyW46b+AiuCJyZvgbsRXwkAERfW1Tb/mY5forYjX2thOg== dependencies: - "@vue/reactivity" "3.0.0-rc.2" - "@vue/shared" "3.0.0-rc.2" + "@vue/reactivity" "3.0.0-rc.5" + "@vue/shared" "3.0.0-rc.5" -"@vue/runtime-dom@3.0.0-rc.2": - version "3.0.0-rc.2" - resolved "https://registry.yarnpkg.com/@vue/runtime-dom/-/runtime-dom-3.0.0-rc.2.tgz#be660bd208c2fd4cd2f73b71617c2da8a7b48d50" - integrity sha512-VvT06p5Qm29LdyX+jvEMXgqD5/2PfeftnkIPbLRjvmpcZTxmdm1GmitLfbv2YQvOPUDWjVBmjJ1SHJkdI0SDhg== +"@vue/runtime-dom@3.0.0-rc.5": + version "3.0.0-rc.5" + resolved "https://registry.yarnpkg.com/@vue/runtime-dom/-/runtime-dom-3.0.0-rc.5.tgz#2fd75a1f29b23abf0ffe5ccdedabda11721c5b5b" + integrity sha512-0jwpO3MBqMToq7qC816Z8Y6G8aN4ZKbv7MupgRaepzxhiK0sXcjLQmOATP3g/NyX52UCBJS4wAwsxidqGnAabA== dependencies: - "@vue/runtime-core" "3.0.0-rc.2" - "@vue/shared" "3.0.0-rc.2" + "@vue/runtime-core" "3.0.0-rc.5" + "@vue/shared" "3.0.0-rc.5" csstype "^2.6.8" -"@vue/server-renderer@^3.0.0-rc.2": - version "3.0.0-rc.2" - resolved "https://registry.yarnpkg.com/@vue/server-renderer/-/server-renderer-3.0.0-rc.2.tgz#d4f89d77bec0651834b27735d659e26dbbd1b058" - integrity sha512-6U/Ni50FLWNJDZtQWbj/ipi6PkYLqx9bGmLD3/rUYBzrX9hCGtok/iImkeH7uoBE8nQGopElEXfoJBvQGFXUeg== +"@vue/server-renderer@^3.0.0-rc.5": + version "3.0.0-rc.5" + resolved "https://registry.yarnpkg.com/@vue/server-renderer/-/server-renderer-3.0.0-rc.5.tgz#524d3827c1352f7b6dbe178bd36902a26a0316cb" + integrity sha512-lWxs6uSvpw3UsqVxatdtEQBUTEdPTsM5JTqM1haAhaIWI2dhWEhmF3Z3iXnO12e8KUUp7Q4SjriEarzEa6YXtg== dependencies: - "@vue/compiler-ssr" "3.0.0-rc.2" - "@vue/shared" "3.0.0-rc.2" + "@vue/compiler-ssr" "3.0.0-rc.5" + "@vue/shared" "3.0.0-rc.5" -"@vue/shared@3.0.0-rc.2": - version "3.0.0-rc.2" - resolved "https://registry.yarnpkg.com/@vue/shared/-/shared-3.0.0-rc.2.tgz#bffe0a53eb2f6ce50def4613a6963e948c29ed83" - integrity sha512-lJ1jb5PEDoSTosKdOyFh9/GpSFY/d9HXkG126aJXM4WgvJaf+OVKUWKZSgqolKLLIOJHG9ZcQt4OQyoktMenBg== +"@vue/shared@3.0.0-rc.5": + version "3.0.0-rc.5" + resolved "https://registry.yarnpkg.com/@vue/shared/-/shared-3.0.0-rc.5.tgz#cea2378e3e37363ddc1f5dd158edc9c9b5b3fff0" + integrity sha512-ZhcgGzBpp+pUzisZgQpM4ctIGgLpYjBj7/rZfbhEPxFHF/BuTV2jmhXvAl8aF9xDAejIcw85xCy92gDSwKtPag== "@webassemblyjs/ast@1.9.0": version "1.9.0" @@ -10022,14 +10008,14 @@ vue-loader@^16.0.0-beta.4: merge-source-map "^1.1.0" source-map "^0.6.1" -vue@^3.0.0-beta.20: - version "3.0.0-rc.2" - resolved "https://registry.yarnpkg.com/vue/-/vue-3.0.0-rc.2.tgz#7eb0858e575051ac612bee6547bdd21b0f63d717" - integrity sha512-syYidmtdfAz2aN1q7F/TlyPZdRXjIbp/QnpetWwhoBaOQOnqm+dHN5KwN8xBF+eUE4ys4aO8rrv7ulTQ4l8rFQ== +vue@^3.0.0-rc.5: + version "3.0.0-rc.5" + resolved "https://registry.yarnpkg.com/vue/-/vue-3.0.0-rc.5.tgz#973175d45a892b3bd23ef5de7faa4add9c66275f" + integrity sha512-8t8Y4sHMBGD5iLZ7JfBGmKBJlzesPoL+/nW9EV8s+4LwnKC4rGlRp+Lj2rcign4iQaj0GFaL7DrQ8IoOfVX6+w== dependencies: - "@vue/compiler-dom" "3.0.0-rc.2" - "@vue/runtime-dom" "3.0.0-rc.2" - "@vue/shared" "3.0.0-rc.2" + "@vue/compiler-dom" "3.0.0-rc.5" + "@vue/runtime-dom" "3.0.0-rc.5" + "@vue/shared" "3.0.0-rc.5" w3c-hr-time@^1.0.2: version "1.0.2" From faf0aab6451848e5b4330e1d01033137a0c42a5a Mon Sep 17 00:00:00 2001 From: Eduardo San Martin Morote Date: Thu, 6 Aug 2020 15:19:48 +0200 Subject: [PATCH 0011/1422] fix(matcher): avoid trailing slash with optional params --- __tests__/matcher/pathParser.spec.ts | 36 +++++++++---- __tests__/matcher/resolve.spec.ts | 78 ++++++++++++++++++++++++++-- src/matcher/index.ts | 2 +- src/matcher/pathParserRanker.ts | 11 ++-- 4 files changed, 108 insertions(+), 19 deletions(-) diff --git a/__tests__/matcher/pathParser.spec.ts b/__tests__/matcher/pathParser.spec.ts index 2524d0ee8..c3355ea61 100644 --- a/__tests__/matcher/pathParser.spec.ts +++ b/__tests__/matcher/pathParser.spec.ts @@ -458,17 +458,21 @@ describe('Path parser', () => { }) it('param?', () => { - matchRegExp('^(?:/(\\d+))?$', [ + matchRegExp( + '^(?:/(\\d+))?/?$', [ - { - type: TokenType.Param, - value: 'id', - regexp: '\\d+', - repeatable: false, - optional: true, - }, + [ + { + type: TokenType.Param, + value: 'id', + regexp: '\\d+', + repeatable: false, + optional: true, + }, + ], ], - ]) + { strict: false } + ) }) it('static and param?', () => { @@ -651,6 +655,15 @@ describe('Path parser', () => { matchParams('/:a*', '/', { a: '' }) }) + it('static then empty param optional', () => { + matchParams('/a/:a?', '/a', { a: '' }) + matchParams('/a/:a?', '/a/a', { a: 'a' }) + matchParams('/a/:a?', '/a/a/', { a: 'a' }) + matchParams('/a/:a?', '/a/', { a: '' }) + matchParams('/a/:a*', '/a', { a: '' }) + matchParams('/a/:a*', '/a/', { a: '' }) + }) + it('static then param optional', () => { matchParams('/one/:a?', '/one/two', { a: 'two' }) matchParams('/one/:a?', '/one/', { a: '' }) @@ -744,6 +757,11 @@ describe('Path parser', () => { matchStringify('/:a*', { a: ['one', 'two'] }, '/one/two') }) + it('static then optional param?', () => { + matchStringify('/a/:a?', { a: '' }, '/a') + matchStringify('/a/:a?', {}, '/a') + }) + it('optional param?', () => { matchStringify('/:a?/other', { a: '' }, '/other') matchStringify('/:a?/other', {}, '/other') diff --git a/__tests__/matcher/resolve.spec.ts b/__tests__/matcher/resolve.spec.ts index 5b9495cc7..1a5b1edea 100644 --- a/__tests__/matcher/resolve.spec.ts +++ b/__tests__/matcher/resolve.spec.ts @@ -54,11 +54,8 @@ describe('RouterMatcher.resolve', () => { } // allows not passing params - if ('params' in location) { - resolved.params = resolved.params || location.params - } else { - resolved.params = resolved.params || {} - } + resolved.params = + resolved.params || ('params' in location ? location.params : {}) const startCopy: MatcherLocation = { ...start, @@ -670,6 +667,32 @@ describe('RouterMatcher.resolve', () => { ) }) + it('allows an optional trailing slash with optional param', () => { + assertRecordMatch( + { path: '/:a', components, name: 'a' }, + { path: '/a/' }, + { path: '/a/', params: { a: 'a' }, name: 'a' } + ) + assertRecordMatch( + { path: '/a/:a', components, name: 'a' }, + { path: '/a/a/' }, + { path: '/a/a/', params: { a: 'a' }, name: 'a' } + ) + }) + + it('allows an optional trailing slash with missing optional param', () => { + assertRecordMatch( + { path: '/:a?', components, name: 'a' }, + { path: '/' }, + { path: '/', params: { a: '' }, name: 'a' } + ) + assertRecordMatch( + { path: '/a/:a?', components, name: 'a' }, + { path: '/a/' }, + { path: '/a/', params: { a: '' }, name: 'a' } + ) + }) + // FIXME: it.skip('keeps required trailing slash (strict: true)', () => { const record = { @@ -754,6 +777,21 @@ describe('RouterMatcher.resolve', () => { } ) }) + + it('drops optional params', () => { + assertRecordMatch( + { path: '/:a/:b?', name: 'p', components }, + { name: 'p', params: { a: 'b' } }, + { name: 'p', path: '/b', params: { a: 'b' } }, + { + params: { a: 'a', b: 'b' }, + path: '/a', + matched: [], + meta: {}, + name: undefined, + } + ) + }) }) describe('LocationAsRelative', () => { @@ -888,6 +926,36 @@ describe('RouterMatcher.resolve', () => { ) }) + it('keep optional params', () => { + assertRecordMatch( + { path: '/:a/:b?', name: 'p', components }, + {}, + { name: 'p', path: '/a/b', params: { a: 'a', b: 'b' } }, + { + name: 'p', + params: { a: 'a', b: 'b' }, + path: '/a/b', + matched: [], + meta: {}, + } + ) + }) + + it('merges optional params', () => { + assertRecordMatch( + { path: '/:a/:b?', name: 'p', components }, + { params: { a: 'c' } }, + { name: 'p', path: '/c/b', params: { a: 'c', b: 'b' } }, + { + name: 'p', + params: { a: 'a', b: 'b' }, + path: '/a/b', + matched: [], + meta: {}, + } + ) + }) + it('throws if the current named route does not exists', () => { const record = { path: '/', components } const start = { diff --git a/src/matcher/index.ts b/src/matcher/index.ts index 1bb7b07a8..268e285eb 100644 --- a/src/matcher/index.ts +++ b/src/matcher/index.ts @@ -230,7 +230,7 @@ export function createRouterMatcher( currentLocation.params, // only keep params that exist in the resolved location // TODO: only keep optional params coming from a parent record - matcher.keys.map(k => k.name) + matcher.keys.filter(k => !k.optional).map(k => k.name) ), location.params ) diff --git a/src/matcher/pathParserRanker.ts b/src/matcher/pathParserRanker.ts index 663f2bf25..fad25118e 100644 --- a/src/matcher/pathParserRanker.ts +++ b/src/matcher/pathParserRanker.ts @@ -218,7 +218,7 @@ export function tokensToParser( // for optional parameters to allow to be empty let avoidDuplicatedSlash: boolean = false for (const segment of segments) { - if (!avoidDuplicatedSlash || path[path.length - 1] !== '/') path += '/' + if (!avoidDuplicatedSlash || !path.endsWith('/')) path += '/' avoidDuplicatedSlash = false for (const token of segment) { @@ -234,9 +234,12 @@ export function tokensToParser( ) const text: string = Array.isArray(param) ? param.join('/') : param if (!text) { - // do not append a slash on the next iteration - if (optional) avoidDuplicatedSlash = true - else throw new Error(`Missing required param "${value}"`) + if (optional) { + // remove the last slash + if (path.endsWith('/')) path = path.slice(0, -1) + // do not append a slash on the next iteration + else avoidDuplicatedSlash = true + } else throw new Error(`Missing required param "${value}"`) } path += text } From eb041175c02ab0dac093823574a85bbbbf2056eb Mon Sep 17 00:00:00 2001 From: Eduardo San Martin Morote Date: Thu, 6 Aug 2020 15:29:40 +0200 Subject: [PATCH 0012/1422] fix(encoding): encode partial params --- __tests__/urlEncoding.spec.ts | 13 ++++++++----- src/router.ts | 17 ++++++++++------- 2 files changed, 18 insertions(+), 12 deletions(-) diff --git a/__tests__/urlEncoding.spec.ts b/__tests__/urlEncoding.spec.ts index 3e4ca5e5c..e9653af9a 100644 --- a/__tests__/urlEncoding.spec.ts +++ b/__tests__/urlEncoding.spec.ts @@ -12,6 +12,7 @@ const routes: RouteRecordRaw[] = [ { path: '/to-p/:p', redirect: to => `/p/${to.params.p}` }, { path: '/p/:p', component: components.Bar, name: 'params' }, { path: '/p/:p+', component: components.Bar, name: 'repeat' }, + { path: '/optional/:a/:b?', component: components.Bar, name: 'optional' }, ] function createRouter() { @@ -42,7 +43,8 @@ describe('URL Encoding', () => { const router = createRouter() await router.push('/p/bar') await router.push({ params: { p: 'foo' } }) - expect(encoding.encodeParam).toHaveBeenCalledTimes(1) + expect(encoding.encodeParam).toHaveBeenCalledTimes(2) + expect(encoding.encodeParam).toHaveBeenCalledWith('bar') expect(encoding.encodeParam).toHaveBeenCalledWith('foo') }) @@ -75,16 +77,17 @@ describe('URL Encoding', () => { expect(encoding.decode).toHaveBeenNthCalledWith(2, 'bar', 1, ['foo', 'bar']) }) - it('keeps decoded values in params', async () => { + it('decodes values in params', async () => { // @ts-ignore: override to make the difference encoding.decode = () => 'd' // @ts-ignore encoding.encodeParam = () => 'e' const router = createRouter() - await router.push({ name: 'params', params: { p: '%' } }) + await router.push({ name: 'optional', params: { a: 'a%' } }) + await router.push({ params: { b: 'b%' } }) expect(router.currentRoute.value).toMatchObject({ - fullPath: '/p/e', - params: { p: '%' }, + fullPath: '/optional/e/e', + params: { b: 'd', a: 'd' }, }) }) diff --git a/src/router.ts b/src/router.ts index c8a4a58bb..f10f04a6f 100644 --- a/src/router.ts +++ b/src/router.ts @@ -239,10 +239,11 @@ export function createRouter(options: RouterOptions): Router { function resolve( rawLocation: Readonly, - currentLocation?: Readonly + currentLocation?: RouteLocationNormalizedLoaded ): RouteLocation & { href: string } { // const objectLocation = routerLocationAsObject(rawLocation) - currentLocation = currentLocation || currentRoute.value + // we create a copy to modify it later + currentLocation = { ...(currentLocation || currentRoute.value) } if (typeof rawLocation === 'string') { let locationNormalized = parseURL( parseQuery, @@ -293,9 +294,13 @@ export function createRouter(options: RouterOptions): Router { path: parseURL(parseQuery, rawLocation.path, currentLocation.path).path, }) } else { + // pass encoded values to the matcher so it can produce encoded path and fullPath matcherLocation = assign({}, rawLocation, { params: encodeParams(rawLocation.params), }) + // current location params are decoded, we need to encode them in case the + // matcher merges the params + currentLocation.params = encodeParams(currentLocation.params) } let matchedRoute = matcher.resolve(matcherLocation, currentLocation) @@ -307,11 +312,9 @@ export function createRouter(options: RouterOptions): Router { ) } - // put back the unencoded params as given by the user (avoid the cost of decoding them) - matchedRoute.params = - 'params' in rawLocation - ? normalizeParams(rawLocation.params) - : decodeParams(matchedRoute.params) + // decoding them) the matcher might have merged current location params so + // we need to run the decoding again + matchedRoute.params = normalizeParams(decodeParams(matchedRoute.params)) const fullPath = stringifyURL( stringifyQuery, From 3896f15668672d9eca2f1bc56e3b8383586a3770 Mon Sep 17 00:00:00 2001 From: Eduardo San Martin Morote Date: Thu, 6 Aug 2020 15:30:14 +0200 Subject: [PATCH 0013/1422] chore: add comment [skip ci] --- src/matcher/pathParserRanker.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/matcher/pathParserRanker.ts b/src/matcher/pathParserRanker.ts index fad25118e..6910e3ac9 100644 --- a/src/matcher/pathParserRanker.ts +++ b/src/matcher/pathParserRanker.ts @@ -235,7 +235,7 @@ export function tokensToParser( const text: string = Array.isArray(param) ? param.join('/') : param if (!text) { if (optional) { - // remove the last slash + // remove the last slash as we could be at the end if (path.endsWith('/')) path = path.slice(0, -1) // do not append a slash on the next iteration else avoidDuplicatedSlash = true From e3dcc8d9477e17f9b92e22787b750edc4658b77a Mon Sep 17 00:00:00 2001 From: Eduardo San Martin Morote Date: Thu, 6 Aug 2020 16:10:10 +0200 Subject: [PATCH 0014/1422] feat(warn): warn against infinite redirections --- __tests__/warnings.spec.ts | 20 ++++++++++++++++++++ src/navigationGuards.ts | 3 --- src/router.ts | 29 +++++++++++++++++++++++++++-- 3 files changed, 47 insertions(+), 5 deletions(-) diff --git a/__tests__/warnings.spec.ts b/__tests__/warnings.spec.ts index 61b4026d6..5cba0f90f 100644 --- a/__tests__/warnings.spec.ts +++ b/__tests__/warnings.spec.ts @@ -187,4 +187,24 @@ describe('warnings', () => { await expect(router.push({ path: '/foo2' })).resolves.toBe(undefined) expect(`No match found for location with path "/foo2"`).toHaveBeenWarned() }) + + it('warns if next is called with the same location too many times', async () => { + let router = createRouter({ + history: createMemoryHistory(), + routes: [ + { path: '/', name: 'a', component }, + { path: '/b', component }, + ], + }) + + router.beforeEach(to => { + if (to.path === '/b') return '/b' + return + }) + + await router.push('/b').catch(() => {}) + expect( + 'Detected an infinite redirection in a navigation guard when going from "/" to "/b"' + ).toHaveBeenWarned() + }) }) diff --git a/src/navigationGuards.ts b/src/navigationGuards.ts index 1eebe39c1..4093e189c 100644 --- a/src/navigationGuards.ts +++ b/src/navigationGuards.ts @@ -157,9 +157,6 @@ export function guardToPromiseFn( record && record.instances[name!], to, from, - // TODO: could wrap in dev to check if the guard returns before - // calling next with 3 or more arguments. This would help people - // forgetting to remove the `next` argument __DEV__ ? canOnlyBeCalledOnce(next, to, from) : next ) ) diff --git a/src/router.ts b/src/router.ts index f10f04a6f..9850dd8ea 100644 --- a/src/router.ts +++ b/src/router.ts @@ -490,8 +490,31 @@ export function createRouter(options: RouterOptions): Router { if (failure) { if ( isNavigationFailure(failure, ErrorTypes.NAVIGATION_GUARD_REDIRECT) - ) - // preserve the original redirectedFrom if any + ) { + if ( + __DEV__ && + // we are redirecting to the same location we were already at + isSameRouteLocation( + stringifyQuery, + resolve(failure.to), + toLocation + ) && + // and we have done it a couple of times + redirectedFrom && + // @ts-ignore + (redirectedFrom._count = redirectedFrom._count + ? // @ts-ignore + redirectedFrom._count + 1 + : 1) > 10 + ) { + warn( + `Detected an infinite redirection in a navigation guard when going from "${from.fullPath}" to "${toLocation.fullPath}". Aborting to avoid a Stack Overflow. This will break in production if not fixed.` + ) + return Promise.reject( + new Error('Infinite redirect in navigation guard') + ) + } + return pushWithRedirect( // keep options assign(locationAsObject(failure.to), { @@ -499,8 +522,10 @@ export function createRouter(options: RouterOptions): Router { force, replace, }), + // preserve the original redirectedFrom if any redirectedFrom || toLocation ) + } } else { // if we fail we don't finalize the navigation failure = finalizeNavigation( From 61022a6680f4cae14baf10582068b454218d530d Mon Sep 17 00:00:00 2001 From: Eduardo San Martin Morote Date: Thu, 6 Aug 2020 16:13:33 +0200 Subject: [PATCH 0015/1422] test: move warning test to its own spec --- __tests__/router.spec.ts | 30 ------------------------------ __tests__/warnings.spec.ts | 18 ++++++++++++++++++ 2 files changed, 18 insertions(+), 30 deletions(-) diff --git a/__tests__/router.spec.ts b/__tests__/router.spec.ts index 9fd384983..e45dca129 100644 --- a/__tests__/router.spec.ts +++ b/__tests__/router.spec.ts @@ -352,36 +352,6 @@ describe('Router', () => { expect(router.currentRoute.value.path).toBe('/add') }) - describe('Warnings', () => { - it.skip('avoid infinite redirection loops', async () => { - const history = createMemoryHistory() - let calls = 0 - const beforeEnter = jest.fn((to, from, next) => { - if (++calls > 1000) throw new Error('1000 calls') - next(to.path) - }) - const { router } = await newRouter({ - history, - routes: [{ path: '/foo', component: components.Home, beforeEnter }], - }) - await expect(router.push('/foo')).resolves.toBe(undefined) - }) - - it.todo('avoid infinite redirection loops when doing router.back()') - - it('warns if `next` is called twice', async () => { - const { router } = await newRouter() - router.beforeEach((to, from, next) => { - next() - next() - }) - await router.push('/foo') - expect( - 'It should be called exactly one time in each navigation guard' - ).toHaveBeenWarned() - }) - }) - describe('alias', () => { it('does not navigate to alias if already on original record', async () => { const { router } = await newRouter() diff --git a/__tests__/warnings.spec.ts b/__tests__/warnings.spec.ts index 5cba0f90f..4dfa8ac5c 100644 --- a/__tests__/warnings.spec.ts +++ b/__tests__/warnings.spec.ts @@ -207,4 +207,22 @@ describe('warnings', () => { 'Detected an infinite redirection in a navigation guard when going from "/" to "/b"' ).toHaveBeenWarned() }) + + it('warns if `next` is called twice', async () => { + const router = createRouter({ + history: createMemoryHistory(), + routes: [ + { path: '/', component }, + { path: '/foo', component }, + ], + }) + router.beforeEach((to, from, next) => { + next() + next() + }) + await router.push('/foo') + expect( + 'It should be called exactly one time in each navigation guard' + ).toHaveBeenWarned() + }) }) From df8b2b140155d1e4ad5d00cd17d57ab2046a75e2 Mon Sep 17 00:00:00 2001 From: Pine Date: Fri, 7 Aug 2020 18:12:17 +0800 Subject: [PATCH 0016/1422] fix(vetur): update tags/attributes definition (#408) --- vetur/attributes.json | 4 ++++ vetur/tags.json | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/vetur/attributes.json b/vetur/attributes.json index c2a5eb1f9..7ca18ef5b 100644 --- a/vetur/attributes.json +++ b/vetur/attributes.json @@ -13,6 +13,10 @@ "type": "boolean", "description": "Setting replace prop will call `router.replace()` instead of `router.push()` when clicked, so the navigation will replace the current history entry." }, + "custom": { + "type": "boolean", + "description": "Whether `` should not wrap its content in an `` tag." + }, "active-class": { "type": "string", "description": "Configure the active CSS class applied when the link is active. Note the default value can also be configured globally via the `linkActiveClass` router constructor option." diff --git a/vetur/tags.json b/vetur/tags.json index 73c5e2756..dc4f77e7d 100644 --- a/vetur/tags.json +++ b/vetur/tags.json @@ -4,7 +4,7 @@ "description": "Component that renders the matched component for the current location. Components rendered by `` can also contain their own `` to render nested routes." }, "router-link": { - "attributes": ["to", "activeClass","exactActiveClass", "custom"], + "attributes": ["to", "replace", "custom", "active-class","exact-active-class", "aria-current-value"], "description": "Component that renders an `` with the correct `href` attribute and click listeners to trigger a local navigation when clicked. Can also customize its rendering by providing the `custom` prop and using its `v-slot` API." } } From 25ab89ccbb3feb89670281d9a50c0108991edb86 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Mon, 10 Aug 2020 09:07:08 +0000 Subject: [PATCH 0017/1422] build(deps-dev): bump css-loader from 4.2.0 to 4.2.1 Bumps [css-loader](https://github.com/webpack-contrib/css-loader) from 4.2.0 to 4.2.1. - [Release notes](https://github.com/webpack-contrib/css-loader/releases) - [Changelog](https://github.com/webpack-contrib/css-loader/blob/master/CHANGELOG.md) - [Commits](https://github.com/webpack-contrib/css-loader/compare/v4.2.0...v4.2.1) Signed-off-by: dependabot-preview[bot] --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index 820d07070..c1e6773ab 100644 --- a/package.json +++ b/package.json @@ -84,7 +84,7 @@ "chromedriver": "^84.0.1", "codecov": "^3.7.2", "conventional-changelog-cli": "^2.0.34", - "css-loader": "^4.2.0", + "css-loader": "^4.2.1", "dotenv": "^8.2.0", "faked-promise": "^2.2.2", "html-webpack-plugin": "^4.3.0", diff --git a/yarn.lock b/yarn.lock index 1ea3db90a..008b2a931 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2804,10 +2804,10 @@ css-loader@^3.6.0: schema-utils "^2.7.0" semver "^6.3.0" -css-loader@^4.2.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/css-loader/-/css-loader-4.2.0.tgz#b57efb92ac8f0cd85bf92d89df9634ef1f51b8bf" - integrity sha512-ko7a9b0iFpWtk9eSI/C8IICvZeGtYnjxYjw45rJprokXj/+kBd/siX4vAIBq9Uij8Jubc4jL1EvSnTjCEwaHSw== +css-loader@^4.2.1: + version "4.2.1" + resolved "https://registry.yarnpkg.com/css-loader/-/css-loader-4.2.1.tgz#9f48fd7eae1219d629a3f085ba9a9102ca1141a7" + integrity sha512-MoqmF1if7Z0pZIEXA4ZF9PgtCXxWbfzfJM+3p+OYfhcrwcqhaCRb74DSnfzRl7e024xEiCRn5hCvfUbTf2sgFA== dependencies: camelcase "^6.0.0" cssesc "^3.0.0" From f4ccee52c1d96adf4e3bef815e77513d6a617c71 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Mon, 10 Aug 2020 09:09:04 +0000 Subject: [PATCH 0018/1422] build(deps-dev): bump rollup-plugin-typescript2 from 0.27.1 to 0.27.2 Bumps [rollup-plugin-typescript2](https://github.com/ezolenko/rollup-plugin-typescript2) from 0.27.1 to 0.27.2. - [Release notes](https://github.com/ezolenko/rollup-plugin-typescript2/releases) - [Commits](https://github.com/ezolenko/rollup-plugin-typescript2/compare/0.27.1...0.27.2) Signed-off-by: dependabot-preview[bot] --- package.json | 2 +- yarn.lock | 36 +++++++++++++++++------------------- 2 files changed, 18 insertions(+), 20 deletions(-) diff --git a/package.json b/package.json index c1e6773ab..67e296737 100644 --- a/package.json +++ b/package.json @@ -96,7 +96,7 @@ "prettier": "^2.0.5", "rollup": "^2.23.0", "rollup-plugin-terser": "^6.1.0", - "rollup-plugin-typescript2": "^0.27.1", + "rollup-plugin-typescript2": "^0.27.2", "selenium-server": "^3.141.59", "serve-handler": "^6.1.3", "size-limit": "^4.5.5", diff --git a/yarn.lock b/yarn.lock index 008b2a931..e8003b2d3 100644 --- a/yarn.lock +++ b/yarn.lock @@ -8398,10 +8398,10 @@ resolve-url@^0.2.1: resolved "https://registry.yarnpkg.com/resolve-url/-/resolve-url-0.2.1.tgz#2c637fe77c893afd2a663fe21aa9080068e2052a" integrity sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo= -resolve@1.15.1: - version "1.15.1" - resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.15.1.tgz#27bdcdeffeaf2d6244b95bb0f9f4b4653451f3e8" - integrity sha512-84oo6ZTtoTUpjgNEr5SJyzQhzL72gaRodsSfyxC/AXRvwu0Yse9H8eF9IpGo7b8YetZhlI6v7ZQ6bKBFV/6S7w== +resolve@1.17.0, resolve@^1.1.6, resolve@^1.10.0, resolve@^1.11.0, resolve@^1.17.0, resolve@^1.3.2, resolve@~1.17.0: + version "1.17.0" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.17.0.tgz#b25941b54968231cc2d1bb76a79cb7f2c0bf8444" + integrity sha512-ic+7JYiV8Vi2yzQGFWOkiZD5Z9z7O2Zhm9XMaTxdJExKasieFCr+yXZ/WmXsckHiKl12ar0y6XiXDx3m4RHn1w== dependencies: path-parse "^1.0.6" @@ -8412,13 +8412,6 @@ resolve@1.8.1: dependencies: path-parse "^1.0.5" -resolve@^1.1.6, resolve@^1.10.0, resolve@^1.11.0, resolve@^1.17.0, resolve@^1.3.2, resolve@~1.17.0: - version "1.17.0" - resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.17.0.tgz#b25941b54968231cc2d1bb76a79cb7f2c0bf8444" - integrity sha512-ic+7JYiV8Vi2yzQGFWOkiZD5Z9z7O2Zhm9XMaTxdJExKasieFCr+yXZ/WmXsckHiKl12ar0y6XiXDx3m4RHn1w== - dependencies: - path-parse "^1.0.6" - restore-cursor@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-3.1.0.tgz#39f67c54b3a7a58cea5236d95cf0034239631f7e" @@ -8491,16 +8484,16 @@ rollup-plugin-terser@^6.1.0: serialize-javascript "^3.0.0" terser "^4.7.0" -rollup-plugin-typescript2@^0.27.1: - version "0.27.1" - resolved "https://registry.yarnpkg.com/rollup-plugin-typescript2/-/rollup-plugin-typescript2-0.27.1.tgz#4f27193408a8f040139eed3e3db7b0c7f3668200" - integrity sha512-RJl77Bbj1EunAQDC3dK/O2HWuSUX3oJbRGzyLoS5o9W4Hs1Nix3Gavqj1Lzs5Y6Ff4H2xXfmZ1WWUQCYocSbzQ== +rollup-plugin-typescript2@^0.27.2: + version "0.27.2" + resolved "https://registry.yarnpkg.com/rollup-plugin-typescript2/-/rollup-plugin-typescript2-0.27.2.tgz#871a7f5d2a774f9cef50d25da868eec72acc2ed8" + integrity sha512-zarMH2F8oT/NO6p20gl/jkts+WxyzOlhOIUwUU/EDx5e6ewdDPS/flwLj5XFuijUCr64bZwqKuRVwCPdXXYefQ== dependencies: - "@rollup/pluginutils" "^3.0.8" + "@rollup/pluginutils" "^3.1.0" find-cache-dir "^3.3.1" fs-extra "8.1.0" - resolve "1.15.1" - tslib "1.11.2" + resolve "1.17.0" + tslib "2.0.1" rollup@^2.23.0: version "2.23.0" @@ -9692,7 +9685,12 @@ ts-pnp@^1.1.6: resolved "https://registry.yarnpkg.com/ts-pnp/-/ts-pnp-1.2.0.tgz#a500ad084b0798f1c3071af391e65912c86bca92" integrity sha512-csd+vJOb/gkzvcCHgTGSChYpy5f1/XKNsmvBGO4JXS+z1v2HobugDz4s1IeFXM3wZB44uczs+eazB5Q/ccdhQw== -tslib@1.11.2, tslib@^1.10.0, tslib@^1.9.0: +tslib@2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.0.1.tgz#410eb0d113e5b6356490eec749603725b021b43e" + integrity sha512-SgIkNheinmEBgx1IUNirK0TUD4X9yjjBRTqqjggWCU3pUEqIk3/Uwl3yRixYKT6WjQuGiwDv4NomL3wqRCj+CQ== + +tslib@^1.10.0, tslib@^1.9.0: version "1.11.2" resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.11.2.tgz#9c79d83272c9a7aaf166f73915c9667ecdde3cc9" integrity sha512-tTSkux6IGPnUGUd1XAZHcpu85MOkIl5zX49pO+jfsie3eP0B6pyhOlLXm3cAC6T7s+euSDDUUV+Acop5WmtkVg== From 8de70ce108a60d63f91a5348d3c31a467c862c92 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Mon, 10 Aug 2020 09:10:54 +0000 Subject: [PATCH 0019/1422] build(deps-dev): bump @types/jest from 26.0.8 to 26.0.9 Bumps [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/jest) from 26.0.8 to 26.0.9. - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/jest) Signed-off-by: dependabot-preview[bot] --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index 67e296737..2d11db4fd 100644 --- a/package.json +++ b/package.json @@ -72,7 +72,7 @@ "@rollup/plugin-node-resolve": "^8.4.0", "@rollup/plugin-replace": "^2.3.3", "@size-limit/preset-small-lib": "^4.5.5", - "@types/jest": "^26.0.8", + "@types/jest": "^26.0.9", "@types/jsdom": "^16.2.3", "@types/webpack": "^4.41.21", "@types/webpack-env": "^1.15.2", diff --git a/yarn.lock b/yarn.lock index e8003b2d3..ec07f7679 100644 --- a/yarn.lock +++ b/yarn.lock @@ -813,10 +813,10 @@ "@types/istanbul-lib-coverage" "*" "@types/istanbul-lib-report" "*" -"@types/jest@^26.0.8": - version "26.0.8" - resolved "https://registry.yarnpkg.com/@types/jest/-/jest-26.0.8.tgz#f5c5559cf25911ce227f7ce30f1f160f24966369" - integrity sha512-eo3VX9jGASSuv680D4VQ89UmuLZneNxv2MCZjfwlInav05zXVJTzfc//lavdV0GPwSxsXJTy2jALscB7Acqg0g== +"@types/jest@^26.0.9": + version "26.0.9" + resolved "https://registry.yarnpkg.com/@types/jest/-/jest-26.0.9.tgz#0543b57da5f0cd949c5f423a00c56c492289c989" + integrity sha512-k4qFfJ5AUKrWok5KYXp2EPm89b0P/KZpl7Vg4XuOTVVQEhLDBDBU3iBFrjjdgd8fLw96aAtmnwhXHl63bWeBQQ== dependencies: jest-diff "^25.2.1" pretty-format "^25.2.1" From c058636111f37c3f5d9105e72914c4e9a27cff7c Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Mon, 10 Aug 2020 09:11:04 +0000 Subject: [PATCH 0020/1422] build(deps-dev): bump @microsoft/api-documenter from 7.8.21 to 7.8.22 Bumps [@microsoft/api-documenter](https://github.com/microsoft/rushstack) from 7.8.21 to 7.8.22. - [Release notes](https://github.com/microsoft/rushstack/releases) - [Commits](https://github.com/microsoft/rushstack/compare/@microsoft/api-documenter_v7.8.21...@microsoft/api-documenter_v7.8.22) Signed-off-by: dependabot-preview[bot] --- package.json | 2 +- yarn.lock | 30 +++++++++++++++--------------- 2 files changed, 16 insertions(+), 16 deletions(-) diff --git a/package.json b/package.json index 2d11db4fd..504afae7b 100644 --- a/package.json +++ b/package.json @@ -65,7 +65,7 @@ "attributes": "vetur/attributes.json" }, "devDependencies": { - "@microsoft/api-documenter": "^7.8.21", + "@microsoft/api-documenter": "^7.8.22", "@microsoft/api-extractor": "^7.8.1", "@rollup/plugin-alias": "^3.1.1", "@rollup/plugin-commonjs": "^14.0.0", diff --git a/yarn.lock b/yarn.lock index ec07f7679..746ef6d86 100644 --- a/yarn.lock +++ b/yarn.lock @@ -483,14 +483,14 @@ "@types/yargs" "^15.0.0" chalk "^4.0.0" -"@microsoft/api-documenter@^7.8.21": - version "7.8.21" - resolved "https://registry.yarnpkg.com/@microsoft/api-documenter/-/api-documenter-7.8.21.tgz#96dba0c1b6b7db9c1acae9dd1e32e801cdecb853" - integrity sha512-ffrJEVNykhSVJL8W/fX95GOF8LsG1BjVjp1exGVdmKltrmpDAlFL6WVs24ii1WUY62lcIjMqgBK4F9DszFZ5UQ== +"@microsoft/api-documenter@^7.8.22": + version "7.8.22" + resolved "https://registry.yarnpkg.com/@microsoft/api-documenter/-/api-documenter-7.8.22.tgz#0461a072161e1a32d85776df23f3d96fb44f6a25" + integrity sha512-Vsgx/sOPBn74PnkLhVN3yTg2ZiQc0cwrdxgKZCtfYLRh00qCTA/EhK+3cgIQqXf6ZPvvGj9VA5zMCpCHjC51dg== dependencies: - "@microsoft/api-extractor-model" "7.8.12" + "@microsoft/api-extractor-model" "7.8.13" "@microsoft/tsdoc" "0.12.19" - "@rushstack/node-core-library" "3.25.0" + "@rushstack/node-core-library" "3.26.1" "@rushstack/ts-command-line" "4.4.6" colors "~1.2.1" js-yaml "~3.13.1" @@ -504,13 +504,13 @@ "@microsoft/tsdoc" "0.12.19" "@rushstack/node-core-library" "3.19.7" -"@microsoft/api-extractor-model@7.8.12": - version "7.8.12" - resolved "https://registry.yarnpkg.com/@microsoft/api-extractor-model/-/api-extractor-model-7.8.12.tgz#d089193ef29275b8b20802498c6bdfab80dcef59" - integrity sha512-lE9xcNStS2hf5K+ZQy4L9DQ9Xd62bNsMqW+SyPQWXuQ5HJqUBSXJ2yxCWXP/+rcAkFCvZrikbql9M8Z88nKvwQ== +"@microsoft/api-extractor-model@7.8.13": + version "7.8.13" + resolved "https://registry.yarnpkg.com/@microsoft/api-extractor-model/-/api-extractor-model-7.8.13.tgz#1a191db5216b8407d4b55487275bd19f8016c094" + integrity sha512-SspJ84pZEZfF5jcVkwtdmgpnxjwMwJxQkK+v868jF6Ue/rJZ7WV/+qFB76gxLXNPsnVhF/xdS8s4AWXL0ePN8g== dependencies: "@microsoft/tsdoc" "0.12.19" - "@rushstack/node-core-library" "3.25.0" + "@rushstack/node-core-library" "3.26.1" "@microsoft/api-extractor@^7.8.1": version "7.8.1" @@ -616,10 +616,10 @@ timsort "~0.3.0" z-schema "~3.18.3" -"@rushstack/node-core-library@3.25.0": - version "3.25.0" - resolved "https://registry.yarnpkg.com/@rushstack/node-core-library/-/node-core-library-3.25.0.tgz#ba40bc1b188ab5d31f5705999cd2b3b56b8a32cf" - integrity sha512-e2NCFtAu/eu14b8nlzRX6ZrE9Sb3J2wVt+pninQmTn/IgfnRLAtM0D4PzUO4+ktZwF9fCnpqrOGokLzw6RSVNw== +"@rushstack/node-core-library@3.26.1": + version "3.26.1" + resolved "https://registry.yarnpkg.com/@rushstack/node-core-library/-/node-core-library-3.26.1.tgz#1ba3e32954e25f1a2b368f1c06bfc1f127d60463" + integrity sha512-N2wewcrJS2Jut73qxi711D1OXVKd9+8YmCllcjxEN++88qqqxCQVnn6Iu9ydu79Frm5rV8p/zvHOLCeUm/mLOQ== dependencies: "@types/node" "10.17.13" colors "~1.2.1" From 18216a01c3ac5beca5b0e6b58ffc9c4fbd3b3a9c Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Mon, 10 Aug 2020 09:28:58 +0000 Subject: [PATCH 0021/1422] build(deps-dev): bump size-limit and @size-limit/preset-small-lib Bumps [size-limit](https://github.com/ai/size-limit) and [@size-limit/preset-small-lib](https://github.com/ai/size-limit). These dependencies needed to be updated together. Updates `size-limit` from 4.5.5 to 4.5.6 - [Release notes](https://github.com/ai/size-limit/releases) - [Changelog](https://github.com/ai/size-limit/blob/master/CHANGELOG.md) - [Commits](https://github.com/ai/size-limit/compare/4.5.5...4.5.6) Updates `@size-limit/preset-small-lib` from 4.5.5 to 4.5.6 - [Release notes](https://github.com/ai/size-limit/releases) - [Changelog](https://github.com/ai/size-limit/blob/master/CHANGELOG.md) - [Commits](https://github.com/ai/size-limit/compare/4.5.5...4.5.6) Signed-off-by: dependabot-preview[bot] --- package.json | 4 +- yarn.lock | 114 +++++++++++++++++++++++++++++---------------------- 2 files changed, 67 insertions(+), 51 deletions(-) diff --git a/package.json b/package.json index 504afae7b..e2fdd358e 100644 --- a/package.json +++ b/package.json @@ -71,7 +71,7 @@ "@rollup/plugin-commonjs": "^14.0.0", "@rollup/plugin-node-resolve": "^8.4.0", "@rollup/plugin-replace": "^2.3.3", - "@size-limit/preset-small-lib": "^4.5.5", + "@size-limit/preset-small-lib": "^4.5.6", "@types/jest": "^26.0.9", "@types/jsdom": "^16.2.3", "@types/webpack": "^4.41.21", @@ -99,7 +99,7 @@ "rollup-plugin-typescript2": "^0.27.2", "selenium-server": "^3.141.59", "serve-handler": "^6.1.3", - "size-limit": "^4.5.5", + "size-limit": "^4.5.6", "style-loader": "^1.2.1", "ts-jest": "^26.1.4", "ts-loader": "^8.0.2", diff --git a/yarn.lock b/yarn.lock index 746ef6d86..6847e0fff 100644 --- a/yarn.lock +++ b/yarn.lock @@ -661,27 +661,27 @@ dependencies: "@sinonjs/commons" "^1.7.0" -"@size-limit/file@4.5.5": - version "4.5.5" - resolved "https://registry.yarnpkg.com/@size-limit/file/-/file-4.5.5.tgz#98a435f68f598d71c6f6e9684a45af10ec9bf37d" - integrity sha512-VabOMoIllRc36/HthwY7xctwyqzQ/Piy1EEIb/SOHjB2S7IVRKRtXDNULRRD+gaY0gMyHZaK1u81M3xJkVKBAg== +"@size-limit/file@4.5.6": + version "4.5.6" + resolved "https://registry.yarnpkg.com/@size-limit/file/-/file-4.5.6.tgz#6d4c620df37f7cbd58b361302ff2cd4e5f269dd1" + integrity sha512-6USNLtFRwNXrrvWDTJ5vhF7cDTuDm9YD+8prDEmid504ShYO7ZYptJEhTKsilgsXYtBNQ4lpVWQsKUYu/1JBzw== dependencies: semver "7.3.2" -"@size-limit/preset-small-lib@^4.5.5": - version "4.5.5" - resolved "https://registry.yarnpkg.com/@size-limit/preset-small-lib/-/preset-small-lib-4.5.5.tgz#fd3bc3292648ab32b79f82ab2cd12c43050e2ea4" - integrity sha512-U4DJX5+6nj4rQCge8NpXgFKVk3wN0bywS+t9hKzm/sEo14Z2WOx1cGnf7NQVNhYgU1mfwkq60jp01pW+aLua+g== +"@size-limit/preset-small-lib@^4.5.6": + version "4.5.6" + resolved "https://registry.yarnpkg.com/@size-limit/preset-small-lib/-/preset-small-lib-4.5.6.tgz#7ccc4cca795ecadf1ab49f466724587b02e1b29a" + integrity sha512-J5lAL7g+06LuLMy80pB8VQPVLZsMNeWMPOjtlcfX61Xe1nyE6AzQkXcYYyt3mAwR7PWF8GHIiQFFi4MHQ58QyQ== dependencies: - "@size-limit/file" "4.5.5" - "@size-limit/webpack" "4.5.5" + "@size-limit/file" "4.5.6" + "@size-limit/webpack" "4.5.6" -"@size-limit/webpack@4.5.5": - version "4.5.5" - resolved "https://registry.yarnpkg.com/@size-limit/webpack/-/webpack-4.5.5.tgz#ae79b1adf0a0a432a09d8bdcb19dcd053b2e0b95" - integrity sha512-u8InqI0jBwGzvDiid4v7K5z7V+TJrETrf+gfBdt/wdaY54NILrgOROlDoka70Fly17mn+geyIJ+VgI8vMH9ptw== +"@size-limit/webpack@4.5.6": + version "4.5.6" + resolved "https://registry.yarnpkg.com/@size-limit/webpack/-/webpack-4.5.6.tgz#ed496700919a41ad70e1901cf9c711d08cfccd3e" + integrity sha512-6cphzivIpOcCrZy2he+e6eYNAyB6g2jTWDjTuj9nned77tyBdkbOCzTG8gRRdo2/TDVdHHRdkPaPeJx4ZROJ8g== dependencies: - css-loader "^3.6.0" + css-loader "^4.2.1" escape-string-regexp "^4.0.0" file-loader "^6.0.0" mkdirp "^1.0.4" @@ -690,7 +690,7 @@ pnp-webpack-plugin "^1.6.4" rimraf "^3.0.2" style-loader "^1.2.1" - webpack "^4.43.0" + webpack "^4.44.1" webpack-bundle-analyzer "^3.8.0" "@testim/chrome-version@^1.0.7": @@ -2147,10 +2147,10 @@ chokidar@^2.1.8: optionalDependencies: fsevents "^1.2.7" -chokidar@^3.4.1: - version "3.4.1" - resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.4.1.tgz#e905bdecf10eaa0a0b1db0c664481cc4cbc22ba1" - integrity sha512-TQTJyr2stihpC4Sya9hs2Xh+O2wf+igjL36Y75xx2WdHuiICcn/XJza46Jwt0eT5hVpQOzo3FpY3cj3RVYLX0g== +chokidar@^3.4.1, chokidar@^3.4.2: + version "3.4.2" + resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.4.2.tgz#38dc8e658dec3809741eb3ef7bb0a47fe424232d" + integrity sha512-IZHaDeBeI+sZJRX7lGcXsdzgvZqKv6sECqsbErJA4mHWfpRrD8B97kSFN4cQz6nGBGiuFia1MKR4d6c1o8Cv7A== dependencies: anymatch "~3.1.1" braces "~3.0.2" @@ -2244,6 +2244,11 @@ cli-spinners@^2.2.0: resolved "https://registry.yarnpkg.com/cli-spinners/-/cli-spinners-2.3.0.tgz#0632239a4b5aa4c958610142c34bb7a651fc8df5" integrity sha512-Xs2Hf2nzrvJMFKimOR7YR0QwZ8fc0u98kdtwN1eNAZzNQgH3vK2pXzff6GJtKh7S5hoJ87ECiAiZFS2fb5Ii2w== +cli-spinners@^2.4.0: + version "2.4.0" + resolved "https://registry.yarnpkg.com/cli-spinners/-/cli-spinners-2.4.0.tgz#c6256db216b878cfba4720e719cec7cf72685d7f" + integrity sha512-sJAofoarcm76ZGpuooaO0eDy8saEy+YoZBLjC4h8srt4jeBnkYeOgqxgsJQTpyt2LjI5PTfLJHSL+41Yu4fEJA== + cli-truncate@2.1.0, cli-truncate@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/cli-truncate/-/cli-truncate-2.1.0.tgz#c39e28bf05edcde5be3b98992a22deed5a2b93c7" @@ -2695,6 +2700,17 @@ cosmiconfig@^6.0.0: path-type "^4.0.0" yaml "^1.7.2" +cosmiconfig@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-7.0.0.tgz#ef9b44d773959cae63ddecd122de23853b60f8d3" + integrity sha512-pondGvTuVYDk++upghXJabWzL6Kxu6f26ljFw64Swq9v6sQPUL3EUlVDV56diOjpCayKihL6hVe8exIACU4XcA== + dependencies: + "@types/parse-json" "^4.0.0" + import-fresh "^3.2.1" + parse-json "^5.0.0" + path-type "^4.0.0" + yaml "^1.10.0" + create-ecdh@^4.0.0: version "4.0.3" resolved "https://registry.yarnpkg.com/create-ecdh/-/create-ecdh-4.0.3.tgz#c9111b6f33045c4697f144787f9254cdc77c45ff" @@ -2785,25 +2801,6 @@ css-declaration-sorter@^4.0.1: postcss "^7.0.1" timsort "^0.3.0" -css-loader@^3.6.0: - version "3.6.0" - resolved "https://registry.yarnpkg.com/css-loader/-/css-loader-3.6.0.tgz#2e4b2c7e6e2d27f8c8f28f61bffcd2e6c91ef645" - integrity sha512-M5lSukoWi1If8dhQAUCvj4H8vUt3vOnwbQBH9DdTm/s4Ym2B/3dPMtYZeJmq7Q3S3Pa+I94DcZ7pc9bP14cWIQ== - dependencies: - camelcase "^5.3.1" - cssesc "^3.0.0" - icss-utils "^4.1.1" - loader-utils "^1.2.3" - normalize-path "^3.0.0" - postcss "^7.0.32" - postcss-modules-extract-imports "^2.0.0" - postcss-modules-local-by-default "^3.0.2" - postcss-modules-scope "^2.2.0" - postcss-modules-values "^3.0.0" - postcss-value-parser "^4.1.0" - schema-utils "^2.7.0" - semver "^6.3.0" - css-loader@^4.2.1: version "4.2.1" resolved "https://registry.yarnpkg.com/css-loader/-/css-loader-4.2.1.tgz#9f48fd7eae1219d629a3f085ba9a9102ca1141a7" @@ -4826,7 +4823,7 @@ import-fresh@^2.0.0: caller-path "^2.0.0" resolve-from "^3.0.0" -import-fresh@^3.1.0: +import-fresh@^3.1.0, import-fresh@^3.2.1: version "3.2.1" resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.2.1.tgz#633ff618506e793af5ac91bf48b72677e15cbe66" integrity sha512-6e1q1cnWP2RXD9/keSkxHScg508CdXqXWgWBaETNhyuBFz+kUZlKboh+ISK+bU++DmbHimVBrOz/zzPe0sZ3sQ== @@ -7084,7 +7081,7 @@ optionator@^0.8.1: type-check "~0.3.2" word-wrap "~1.2.3" -ora@^4.0.3, ora@^4.0.4: +ora@^4.0.3: version "4.0.4" resolved "https://registry.yarnpkg.com/ora/-/ora-4.0.4.tgz#e8da697cc5b6a47266655bf68e0fb588d29a545d" integrity sha512-77iGeVU1cIdRhgFzCK8aw1fbtT1B/iZAvWjS+l/o1x0RShMgxHUZaD2yDpWsNCPwXg9z1ZA78Kbdvr8kBmG/Ww== @@ -7098,6 +7095,20 @@ ora@^4.0.3, ora@^4.0.4: strip-ansi "^6.0.0" wcwidth "^1.0.1" +ora@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/ora/-/ora-5.0.0.tgz#4f0b34f2994877b49b452a707245ab1e9f6afccb" + integrity sha512-s26qdWqke2kjN/wC4dy+IQPBIMWBJlSU/0JZhk30ZDBLelW25rv66yutUWARMigpGPzcXHb+Nac5pNhN/WsARw== + dependencies: + chalk "^4.1.0" + cli-cursor "^3.1.0" + cli-spinners "^2.4.0" + is-interactive "^1.0.0" + log-symbols "^4.0.0" + mute-stream "0.0.8" + strip-ansi "^6.0.0" + wcwidth "^1.0.1" + original@^1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/original/-/original-1.0.2.tgz#e442a61cffe1c5fd20a65f3261c26663b303f25f" @@ -8799,18 +8810,18 @@ sisteransi@^1.0.4: resolved "https://registry.yarnpkg.com/sisteransi/-/sisteransi-1.0.5.tgz#134d681297756437cc05ca01370d3a7a571075ed" integrity sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg== -size-limit@^4.5.5: - version "4.5.5" - resolved "https://registry.yarnpkg.com/size-limit/-/size-limit-4.5.5.tgz#ce89846dfa947d4fafaa0dd4baf6d7e8888ea5be" - integrity sha512-rh4HSU0UVbOjX0vrzJjPjeCvPz6l+xW6QiA+BCAoLv1WzfnklBUnOdHmboF3UzZIxuNa1TmvCUCCDKmIC5XDVw== +size-limit@^4.5.6: + version "4.5.6" + resolved "https://registry.yarnpkg.com/size-limit/-/size-limit-4.5.6.tgz#3eab946c865a09bb2ee7acfec3a6ceb55f23658b" + integrity sha512-xqtAa6ibB+tmGW6Slc+ip/+QeqCrZBGHQ7W4e605YUuQANqNc91aiSiZR8UKP0UYLE3//ggZHH62bGONml7gDA== dependencies: bytes "^3.1.0" - chokidar "^3.4.1" + chokidar "^3.4.2" ci-job-number "^1.2.2" colorette "^1.2.1" - cosmiconfig "^6.0.0" + cosmiconfig "^7.0.0" globby "^11.0.1" - ora "^4.0.4" + ora "^5.0.0" read-pkg-up "^7.0.1" slash@^3.0.0: @@ -10180,7 +10191,7 @@ webpack-sources@^1.1.0, webpack-sources@^1.4.0, webpack-sources@^1.4.1: source-list-map "^2.0.0" source-map "~0.6.1" -webpack@^4.43.0, webpack@^4.44.1: +webpack@^4.44.1: version "4.44.1" resolved "https://registry.yarnpkg.com/webpack/-/webpack-4.44.1.tgz#17e69fff9f321b8f117d1fda714edfc0b939cc21" integrity sha512-4UOGAohv/VGUNQJstzEywwNxqX417FnjZgZJpJQegddzPmTvph37eBIRbRTfdySXzVtJXLJfbMN3mMYhM6GdmQ== @@ -10374,6 +10385,11 @@ yallist@^3.0.2: resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd" integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g== +yaml@^1.10.0: + version "1.10.0" + resolved "https://registry.yarnpkg.com/yaml/-/yaml-1.10.0.tgz#3b593add944876077d4d683fee01081bd9fff31e" + integrity sha512-yr2icI4glYaNG+KWONODapy2/jDdMSDnrONSjblABjD9B4Z5LgiircSt8m8sRZFNi08kG9Sm0uSHtEmP3zaEGg== + yaml@^1.7.2: version "1.9.2" resolved "https://registry.yarnpkg.com/yaml/-/yaml-1.9.2.tgz#f0cfa865f003ab707663e4f04b3956957ea564ed" From 7869764cb5fefcf1fe02521c252b3e1ee35d4180 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Mon, 10 Aug 2020 09:51:15 +0000 Subject: [PATCH 0022/1422] build(deps-dev): bump rollup from 2.23.0 to 2.23.1 Bumps [rollup](https://github.com/rollup/rollup) from 2.23.0 to 2.23.1. - [Release notes](https://github.com/rollup/rollup/releases) - [Changelog](https://github.com/rollup/rollup/blob/master/CHANGELOG.md) - [Commits](https://github.com/rollup/rollup/compare/v2.23.0...v2.23.1) Signed-off-by: dependabot-preview[bot] --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index e2fdd358e..bb06d2fc6 100644 --- a/package.json +++ b/package.json @@ -94,7 +94,7 @@ "nightwatch": "^1.3.7", "nightwatch-helpers": "^1.2.0", "prettier": "^2.0.5", - "rollup": "^2.23.0", + "rollup": "^2.23.1", "rollup-plugin-terser": "^6.1.0", "rollup-plugin-typescript2": "^0.27.2", "selenium-server": "^3.141.59", diff --git a/yarn.lock b/yarn.lock index 6847e0fff..48b3cd83c 100644 --- a/yarn.lock +++ b/yarn.lock @@ -8506,10 +8506,10 @@ rollup-plugin-typescript2@^0.27.2: resolve "1.17.0" tslib "2.0.1" -rollup@^2.23.0: - version "2.23.0" - resolved "https://registry.yarnpkg.com/rollup/-/rollup-2.23.0.tgz#b7ab1fee0c0e60132fd0553c4df1e9cdacfada9d" - integrity sha512-vLNmZFUGVwrnqNAJ/BvuLk1MtWzu4IuoqsH9UWK5AIdO3rt8/CSiJNvPvCIvfzrbNsqKbNzPAG1V2O4eTe2XZg== +rollup@^2.23.1: + version "2.23.1" + resolved "https://registry.yarnpkg.com/rollup/-/rollup-2.23.1.tgz#d458d28386dc7660c2e8a4978bea6f9494046c20" + integrity sha512-Heyl885+lyN/giQwxA8AYT2GY3U+gOlTqVLrMQYno8Z1X9lAOpfXPiKiZCyPc25e9BLJM3Zlh957dpTlO4pa8A== optionalDependencies: fsevents "~2.1.2" From 354ba3fe4d2cbcf077cf4ae1db60d826225386f3 Mon Sep 17 00:00:00 2001 From: Eduardo San Martin Morote Date: Wed, 12 Aug 2020 09:34:13 +0200 Subject: [PATCH 0023/1422] types: export augmented interfaces --- src/index.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/index.ts b/src/index.ts index d16365921..90b46d2e1 100644 --- a/src/index.ts +++ b/src/index.ts @@ -63,7 +63,7 @@ export { RouterView, RouterViewProps } from './RouterView' export * from './useApi' declare module '@vue/runtime-core' { - interface ComponentCustomOptions { + export interface ComponentCustomOptions { /** * Guard called when the router is navigating to the route that is rendering * this component from a different route. Differently from `beforeRouteUpdate` @@ -102,7 +102,7 @@ declare module '@vue/runtime-core' { beforeRouteLeave?: NavigationGuard } - interface ComponentCustomProperties { + export interface ComponentCustomProperties { /** * Normalized current location. See {@link RouteLocationNormalizedLoaded}. */ From 50ad404ae45086f051b01ac552e4a3ab98535633 Mon Sep 17 00:00:00 2001 From: Eduardo San Martin Morote Date: Wed, 12 Aug 2020 10:02:28 +0200 Subject: [PATCH 0024/1422] fix(types): append declare module Close #419 --- package.json | 2 +- scripts/release.sh | 1 + src/globalExtensions.ts | 58 ++++++++++++++++++++++++++++++++++++++ src/index.ts | 59 +-------------------------------------- test-dts/legacy.test-d.ts | 11 ++++++++ 5 files changed, 72 insertions(+), 59 deletions(-) create mode 100644 src/globalExtensions.ts create mode 100644 test-dts/legacy.test-d.ts diff --git a/package.json b/package.json index bb06d2fc6..d8a01e83e 100644 --- a/package.json +++ b/package.json @@ -18,7 +18,7 @@ ], "scripts": { "build": "rollup -c rollup.config.js", - "build:dts": "api-extractor run --local --verbose", + "build:dts": "api-extractor run --local --verbose && tail -n +7 src/globalExtensions.ts >> dist/vue-router.d.ts", "dev": "webpack-dev-server --mode=development", "release": "bash scripts/release.sh", "changelog": "conventional-changelog -p angular -i CHANGELOG.md -s -r 1", diff --git a/scripts/release.sh b/scripts/release.sh index 7b4e3e487..7a9738536 100644 --- a/scripts/release.sh +++ b/scripts/release.sh @@ -15,6 +15,7 @@ then rm -rf node_modules/.rts2_cache yarn run build yarn run build:dts + yarn run test:dts # generate the version so that the changelog can be generated too yarn version --no-git-tag-version --no-commit-hooks --new-version $VERSION diff --git a/src/globalExtensions.ts b/src/globalExtensions.ts new file mode 100644 index 000000000..d903b6e99 --- /dev/null +++ b/src/globalExtensions.ts @@ -0,0 +1,58 @@ +import { + NavigationGuardWithThis, + NavigationGuard, + RouteLocationNormalizedLoaded, +} from './types' +import { Router } from './router' + +declare module 'vue' { + export interface ComponentCustomOptions { + /** + * Guard called when the router is navigating to the route that is rendering + * this component from a different route. Differently from `beforeRouteUpdate` + * and `beforeRouteLeave`, `beforeRouteEnter` does not have access to the + * component instance through `this` because it triggers before the component + * is even mounted. + * + * @param to - RouteLocationRaw we are navigating to + * @param from - RouteLocationRaw we are navigating from + * @param next - function to validate, cancel or modify (by redirecting) the + * navigation + */ + beforeRouteEnter?: NavigationGuardWithThis + + /** + * Guard called whenever the route that renders this component has changed but + * it is reused for the new route. This allows you to guard for changes in + * params, the query or the hash. + * + * @param to - RouteLocationRaw we are navigating to + * @param from - RouteLocationRaw we are navigating from + * @param next - function to validate, cancel or modify (by redirecting) the + * navigation + */ + beforeRouteUpdate?: NavigationGuard + + /** + * Guard called when the router is navigating away from the current route that + * is rendering this component. + * + * @param to - RouteLocationRaw we are navigating to + * @param from - RouteLocationRaw we are navigating from + * @param next - function to validate, cancel or modify (by redirecting) the + * navigation + */ + beforeRouteLeave?: NavigationGuard + } + + export interface ComponentCustomProperties { + /** + * Normalized current location. See {@link RouteLocationNormalizedLoaded}. + */ + $route: RouteLocationNormalizedLoaded + /** + * {@link Router} instance used by the application. + */ + $router: Router + } +} diff --git a/src/index.ts b/src/index.ts index 90b46d2e1..a4bd08a3a 100644 --- a/src/index.ts +++ b/src/index.ts @@ -1,10 +1,3 @@ -import { - NavigationGuard, - RouteLocationNormalizedLoaded, - NavigationGuardWithThis, -} from './types' -import { Router } from './router' - export { createWebHistory } from './history/html5' export { createMemoryHistory } from './history/memory' export { createWebHashHistory } from './history/hash' @@ -62,54 +55,4 @@ export { RouterView, RouterViewProps } from './RouterView' export * from './useApi' -declare module '@vue/runtime-core' { - export interface ComponentCustomOptions { - /** - * Guard called when the router is navigating to the route that is rendering - * this component from a different route. Differently from `beforeRouteUpdate` - * and `beforeRouteLeave`, `beforeRouteEnter` does not have access to the - * component instance through `this` because it triggers before the component - * is even mounted. - * - * @param to - RouteLocationRaw we are navigating to - * @param from - RouteLocationRaw we are navigating from - * @param next - function to validate, cancel or modify (by redirecting) the - * navigation - */ - beforeRouteEnter?: NavigationGuardWithThis - - /** - * Guard called whenever the route that renders this component has changed but - * it is reused for the new route. This allows you to guard for changes in - * params, the query or the hash. - * - * @param to - RouteLocationRaw we are navigating to - * @param from - RouteLocationRaw we are navigating from - * @param next - function to validate, cancel or modify (by redirecting) the - * navigation - */ - beforeRouteUpdate?: NavigationGuard - - /** - * Guard called when the router is navigating away from the current route that - * is rendering this component. - * - * @param to - RouteLocationRaw we are navigating to - * @param from - RouteLocationRaw we are navigating from - * @param next - function to validate, cancel or modify (by redirecting) the - * navigation - */ - beforeRouteLeave?: NavigationGuard - } - - export interface ComponentCustomProperties { - /** - * Normalized current location. See {@link RouteLocationNormalizedLoaded}. - */ - $route: RouteLocationNormalizedLoaded - /** - * {@link Router} instance used by the application. - */ - $router: Router - } -} +export * from './globalExtensions' diff --git a/test-dts/legacy.test-d.ts b/test-dts/legacy.test-d.ts new file mode 100644 index 000000000..cd28179b4 --- /dev/null +++ b/test-dts/legacy.test-d.ts @@ -0,0 +1,11 @@ +import { Router, RouteLocationNormalizedLoaded, expectType } from './index' +import { defineComponent } from 'vue' + +defineComponent({ + methods: { + doStuff() { + expectType(this.$router) + expectType(this.$route) + }, + }, +}) From f50215ae7409a55ec215175d8ba42ce0b7a08c58 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Mon, 17 Aug 2020 09:17:44 +0000 Subject: [PATCH 0025/1422] build(deps-dev): bump conventional-changelog-cli from 2.0.34 to 2.1.0 Bumps [conventional-changelog-cli](https://github.com/conventional-changelog/conventional-changelog) from 2.0.34 to 2.1.0. - [Release notes](https://github.com/conventional-changelog/conventional-changelog/releases) - [Commits](https://github.com/conventional-changelog/conventional-changelog/compare/conventional-changelog-cli@2.0.34...conventional-changelog-cli@2.1.0) Signed-off-by: dependabot-preview[bot] --- package.json | 2 +- yarn.lock | 107 ++++++++++++++++++++++++--------------------------- 2 files changed, 51 insertions(+), 58 deletions(-) diff --git a/package.json b/package.json index d8a01e83e..a9742d1f1 100644 --- a/package.json +++ b/package.json @@ -83,7 +83,7 @@ "chalk": "^4.1.0", "chromedriver": "^84.0.1", "codecov": "^3.7.2", - "conventional-changelog-cli": "^2.0.34", + "conventional-changelog-cli": "^2.1.0", "css-loader": "^4.2.1", "dotenv": "^8.2.0", "faked-promise": "^2.2.2", diff --git a/yarn.lock b/yarn.lock index 48b3cd83c..cbd7c353f 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2395,13 +2395,13 @@ commondir@^1.0.1: resolved "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b" integrity sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs= -compare-func@^1.3.1: - version "1.3.2" - resolved "https://registry.yarnpkg.com/compare-func/-/compare-func-1.3.2.tgz#99dd0ba457e1f9bc722b12c08ec33eeab31fa648" - integrity sha1-md0LpFfh+bxyKxLAjsM+6rMfpkg= +compare-func@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/compare-func/-/compare-func-2.0.0.tgz#fb65e75edbddfd2e568554e8b5b05fff7a51fcb3" + integrity sha512-zHig5N+tPWARooBnb0Zx1MFcdfpyJrfTJ3Y5L+IFvUm8rM74hHz66z0gw0x4tijh5CorKkKUCnW82R2vmpeCRA== dependencies: array-ify "^1.0.0" - dot-prop "^3.0.0" + dot-prop "^5.1.0" component-emitter@^1.2.1: version "1.3.0" @@ -2482,12 +2482,12 @@ content-type@~1.0.4: resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.4.tgz#e138cc75e040c727b1966fe5e5f8c9aee256fe3b" integrity sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA== -conventional-changelog-angular@^5.0.10: - version "5.0.10" - resolved "https://registry.yarnpkg.com/conventional-changelog-angular/-/conventional-changelog-angular-5.0.10.tgz#5cf7b00dd315b6a6a558223c80d5ef24ddb34205" - integrity sha512-k7RPPRs0vp8+BtPsM9uDxRl6KcgqtCJmzRD1wRtgqmhQ96g8ifBGo9O/TZBG23jqlXS/rg8BKRDELxfnQQGiaA== +conventional-changelog-angular@^5.0.11: + version "5.0.11" + resolved "https://registry.yarnpkg.com/conventional-changelog-angular/-/conventional-changelog-angular-5.0.11.tgz#99a3ca16e4a5305e0c2c2fae3ef74fd7631fc3fb" + integrity sha512-nSLypht/1yEflhuTogC03i7DX7sOrXGsRn14g131Potqi6cbGbGEE9PSDEHKldabB6N76HiSyw9Ph+kLmC04Qw== dependencies: - compare-func "^1.3.1" + compare-func "^2.0.0" q "^1.5.1" conventional-changelog-atom@^2.0.7: @@ -2497,13 +2497,13 @@ conventional-changelog-atom@^2.0.7: dependencies: q "^1.5.1" -conventional-changelog-cli@^2.0.34: - version "2.0.34" - resolved "https://registry.yarnpkg.com/conventional-changelog-cli/-/conventional-changelog-cli-2.0.34.tgz#3d9da6011aaaf24f331b606ddc5087a6b811464b" - integrity sha512-HDDIhhpsMKiiAfH/mbj7wApgN7uA33Nk4hISY3/7ijlfqXc/bmP3v4o3Yialoxz0iTBibc94xi6kfTH7XIvwDw== +conventional-changelog-cli@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/conventional-changelog-cli/-/conventional-changelog-cli-2.1.0.tgz#5da5be32203ca8382815afc85b7f9151115d5e97" + integrity sha512-hZ8EcpxV4LcGOZwH+U5LJQDnyA4o/uyUdmIGzmFZMB4caujavvDBo/iTgVihk0m1QKkEhJgulagrILSm1JCakA== dependencies: add-stream "^1.0.0" - conventional-changelog "^3.1.21" + conventional-changelog "^3.1.23" lodash "^4.17.15" meow "^7.0.0" tempfile "^3.0.0" @@ -2515,28 +2515,28 @@ conventional-changelog-codemirror@^2.0.7: dependencies: q "^1.5.1" -conventional-changelog-conventionalcommits@^4.3.0: - version "4.3.0" - resolved "https://registry.yarnpkg.com/conventional-changelog-conventionalcommits/-/conventional-changelog-conventionalcommits-4.3.0.tgz#c4205a659f7ca9d7881f29ee78a4e7d6aeb8b3c2" - integrity sha512-oYHydvZKU+bS8LnGqTMlNrrd7769EsuEHKy4fh1oMdvvDi7fem8U+nvfresJ1IDB8K00Mn4LpiA/lR+7Gs6rgg== +conventional-changelog-conventionalcommits@^4.4.0: + version "4.4.0" + resolved "https://registry.yarnpkg.com/conventional-changelog-conventionalcommits/-/conventional-changelog-conventionalcommits-4.4.0.tgz#8d96687141c9bbd725a89b95c04966d364194cd4" + integrity sha512-ybvx76jTh08tpaYrYn/yd0uJNLt5yMrb1BphDe4WBredMlvPisvMghfpnJb6RmRNcqXeuhR6LfGZGewbkRm9yA== dependencies: - compare-func "^1.3.1" + compare-func "^2.0.0" lodash "^4.17.15" q "^1.5.1" -conventional-changelog-core@^4.1.7: - version "4.1.7" - resolved "https://registry.yarnpkg.com/conventional-changelog-core/-/conventional-changelog-core-4.1.7.tgz#6b5cdadda4430895cc4a75a73dd8b36e322ab346" - integrity sha512-UBvSrQR2RdKbSQKh7RhueiiY4ZAIOW3+CSWdtKOwRv+KxIMNFKm1rOcGBFx0eA8AKhGkkmmacoTWJTqyz7Q0VA== +conventional-changelog-core@^4.2.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/conventional-changelog-core/-/conventional-changelog-core-4.2.0.tgz#d8befd1e1f5126bf35a17668276cc8c244650469" + integrity sha512-8+xMvN6JvdDtPbGBqA7oRNyZD4od1h/SIzrWqHcKZjitbVXrFpozEeyn4iI4af1UwdrabQpiZMaV07fPUTGd4w== dependencies: add-stream "^1.0.0" - conventional-changelog-writer "^4.0.16" + conventional-changelog-writer "^4.0.17" conventional-commits-parser "^3.1.0" dateformat "^3.0.0" get-pkg-repo "^1.0.0" git-raw-commits "2.0.0" git-remote-origin-url "^2.0.0" - git-semver-tags "^4.0.0" + git-semver-tags "^4.1.0" lodash "^4.17.15" normalize-package-data "^2.3.5" q "^1.5.1" @@ -2573,12 +2573,12 @@ conventional-changelog-jquery@^3.0.10: dependencies: q "^1.5.1" -conventional-changelog-jshint@^2.0.7: - version "2.0.7" - resolved "https://registry.yarnpkg.com/conventional-changelog-jshint/-/conventional-changelog-jshint-2.0.7.tgz#955a69266951cd31e8afeb3f1c55e0517fdca943" - integrity sha512-qHA8rmwUnLiIxANJbz650+NVzqDIwNtc0TcpIa0+uekbmKHttidvQ1dGximU3vEDdoJVKFgR3TXFqYuZmYy9ZQ== +conventional-changelog-jshint@^2.0.8: + version "2.0.8" + resolved "https://registry.yarnpkg.com/conventional-changelog-jshint/-/conventional-changelog-jshint-2.0.8.tgz#3fff4df8cb46037f77b9dc3f8e354c7f99332f13" + integrity sha512-hB/iI0IiZwnZ+seYI+qEQ4b+EMQSEC8jGIvhO2Vpz1E5p8FgLz75OX8oB1xJWl+s4xBMB6f8zJr0tC/BL7YOjw== dependencies: - compare-func "^1.3.1" + compare-func "^2.0.0" q "^1.5.1" conventional-changelog-preset-loader@^2.3.4: @@ -2586,12 +2586,12 @@ conventional-changelog-preset-loader@^2.3.4: resolved "https://registry.yarnpkg.com/conventional-changelog-preset-loader/-/conventional-changelog-preset-loader-2.3.4.tgz#14a855abbffd59027fd602581f1f34d9862ea44c" integrity sha512-GEKRWkrSAZeTq5+YjUZOYxdHq+ci4dNwHvpaBC3+ENalzFWuCWa9EZXSuZBpkr72sMdKB+1fyDV4takK1Lf58g== -conventional-changelog-writer@^4.0.16: - version "4.0.16" - resolved "https://registry.yarnpkg.com/conventional-changelog-writer/-/conventional-changelog-writer-4.0.16.tgz#ca10f2691a8ea6d3c2eb74bd35bcf40aa052dda5" - integrity sha512-jmU1sDJDZpm/dkuFxBeRXvyNcJQeKhGtVcFFkwTphUAzyYWcwz2j36Wcv+Mv2hU3tpvLMkysOPXJTLO55AUrYQ== +conventional-changelog-writer@^4.0.17: + version "4.0.17" + resolved "https://registry.yarnpkg.com/conventional-changelog-writer/-/conventional-changelog-writer-4.0.17.tgz#4753aaa138bf5aa59c0b274cb5937efcd2722e21" + integrity sha512-IKQuK3bib/n032KWaSb8YlBFds+aLmzENtnKtxJy3+HqDq5kohu3g/UdNbIHeJWygfnEbZjnCKFxAW0y7ArZAw== dependencies: - compare-func "^1.3.1" + compare-func "^2.0.0" conventional-commits-filter "^2.0.6" dateformat "^3.0.0" handlebars "^4.7.6" @@ -2602,21 +2602,21 @@ conventional-changelog-writer@^4.0.16: split "^1.0.0" through2 "^3.0.0" -conventional-changelog@^3.1.21: - version "3.1.21" - resolved "https://registry.yarnpkg.com/conventional-changelog/-/conventional-changelog-3.1.21.tgz#4a774e6bf503acfd7e4685bb750da8c0eccf1e0d" - integrity sha512-ZGecVZPEo3aC75VVE4nu85589dDhpMyqfqgUM5Myq6wfKWiNqhDJLSDMsc8qKXshZoY7dqs1hR0H/15kI/G2jQ== +conventional-changelog@^3.1.23: + version "3.1.23" + resolved "https://registry.yarnpkg.com/conventional-changelog/-/conventional-changelog-3.1.23.tgz#d696408021b579a3814aba79b38729ed86478aea" + integrity sha512-sScUu2NHusjRC1dPc5p8/b3kT78OYr95/Bx7Vl8CPB8tF2mG1xei5iylDTRjONV5hTlzt+Cn/tBWrKdd299b7A== dependencies: - conventional-changelog-angular "^5.0.10" + conventional-changelog-angular "^5.0.11" conventional-changelog-atom "^2.0.7" conventional-changelog-codemirror "^2.0.7" - conventional-changelog-conventionalcommits "^4.3.0" - conventional-changelog-core "^4.1.7" + conventional-changelog-conventionalcommits "^4.4.0" + conventional-changelog-core "^4.2.0" conventional-changelog-ember "^2.0.8" conventional-changelog-eslint "^3.0.8" conventional-changelog-express "^2.0.5" conventional-changelog-jquery "^3.0.10" - conventional-changelog-jshint "^2.0.7" + conventional-changelog-jshint "^2.0.8" conventional-changelog-preset-loader "^2.3.4" conventional-commits-filter@^2.0.6: @@ -3357,14 +3357,7 @@ dot-case@^3.0.3: no-case "^3.0.3" tslib "^1.10.0" -dot-prop@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/dot-prop/-/dot-prop-3.0.0.tgz#1b708af094a49c9a0e7dbcad790aba539dac1177" - integrity sha1-G3CK8JSknJoOfbyteQq6U52sEXc= - dependencies: - is-obj "^1.0.0" - -dot-prop@^5.2.0: +dot-prop@^5.1.0, dot-prop@^5.2.0: version "5.2.0" resolved "https://registry.yarnpkg.com/dot-prop/-/dot-prop-5.2.0.tgz#c34ecc29556dc45f1f4c22697b6f4904e0cc4fcb" integrity sha512-uEUyaDKoSQ1M4Oq8l45hSE26SnTxL6snNnqvK/VWx5wJhmff5z0FUVJDKDanor/6w3kzE3i7XZOk+7wC0EXr1A== @@ -4270,10 +4263,10 @@ git-remote-origin-url@^2.0.0: gitconfiglocal "^1.0.0" pify "^2.3.0" -git-semver-tags@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/git-semver-tags/-/git-semver-tags-4.0.0.tgz#a9dd58a0dd3561a4a9898b7e9731cf441c98fc38" - integrity sha512-LajaAWLYVBff+1NVircURJFL8TQ3EMIcLAfHisWYX/nPoMwnTYfWAznQDmMujlLqoD12VtLmoSrF1sQ5MhimEQ== +git-semver-tags@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/git-semver-tags/-/git-semver-tags-4.1.0.tgz#0146c9bc24ee96104c99f443071c8c2d7dc848e3" + integrity sha512-TcxAGeo03HdErzKzi4fDD+xEL7gi8r2Y5YSxH6N2XYdVSV5UkBwfrt7Gqo1b+uSHCjy/sa9Y6BBBxxFLxfbhTg== dependencies: meow "^7.0.0" semver "^6.0.0" @@ -5149,7 +5142,7 @@ is-number@^7.0.0: resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b" integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng== -is-obj@^1.0.0, is-obj@^1.0.1: +is-obj@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/is-obj/-/is-obj-1.0.1.tgz#3e4729ac1f5fde025cd7d83a896dab9f4f67db0f" integrity sha1-PkcprB9f3gJc19g6iW2rn09n2w8= From 296683156f3ff3872685be025ac6ba7a29ff971f Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Mon, 17 Aug 2020 09:17:12 +0000 Subject: [PATCH 0026/1422] build(deps-dev): bump vue-loader from 16.0.0-beta.4 to 16.0.0-beta.5 Bumps [vue-loader](https://github.com/vuejs/vue-loader) from 16.0.0-beta.4 to 16.0.0-beta.5. - [Release notes](https://github.com/vuejs/vue-loader/releases) - [Changelog](https://github.com/vuejs/vue-loader/blob/master/CHANGELOG.md) - [Commits](https://github.com/vuejs/vue-loader/compare/v16.0.0-beta.4...v16.0.0-beta.5) Signed-off-by: dependabot-preview[bot] --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index a9742d1f1..dbaa0235e 100644 --- a/package.json +++ b/package.json @@ -106,7 +106,7 @@ "ts-node": "^8.10.2", "typescript": "^3.9.7", "vue": "^3.0.0-rc.5", - "vue-loader": "^16.0.0-beta.4", + "vue-loader": "^16.0.0-beta.5", "webpack": "^4.44.1", "webpack-bundle-analyzer": "^3.8.0", "webpack-cli": "^3.3.12", diff --git a/yarn.lock b/yarn.lock index cbd7c353f..9d121073f 100644 --- a/yarn.lock +++ b/yarn.lock @@ -9998,10 +9998,10 @@ vm-browserify@^1.0.1: resolved "https://registry.yarnpkg.com/vm-browserify/-/vm-browserify-1.1.2.tgz#78641c488b8e6ca91a75f511e7a3b32a86e5dda0" integrity sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ== -vue-loader@^16.0.0-beta.4: - version "16.0.0-beta.4" - resolved "https://registry.yarnpkg.com/vue-loader/-/vue-loader-16.0.0-beta.4.tgz#1d9d7894f430992096727c4414bcf3b1ae8c1be9" - integrity sha512-uh/+SIwoN+hny0+GqxdkTuEmt1NV4wb8etF5cKkB1YVMv29ck0byrmkt8IIYadQ3r/fiYsr2brGJqP+hytQwuw== +vue-loader@^16.0.0-beta.5: + version "16.0.0-beta.5" + resolved "https://registry.yarnpkg.com/vue-loader/-/vue-loader-16.0.0-beta.5.tgz#04edc889492b03a445e7ac66e9226a70175ca8a0" + integrity sha512-ciWfzNefqWlmzKznCWY9hl+fPP4KlQ0A9MtHbJ/8DpyY+dAM8gDrjufIdxwTgC4szE4EZC3A6ip/BbrqM84GqA== dependencies: "@types/mini-css-extract-plugin" "^0.9.1" chalk "^3.0.0" From f9a1d7e939bc3374363025d5754493e616b3da2c Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Mon, 17 Aug 2020 09:18:07 +0000 Subject: [PATCH 0027/1422] build(deps-dev): bump @types/jest from 26.0.9 to 26.0.10 Bumps [@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/jest) from 26.0.9 to 26.0.10. - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/jest) Signed-off-by: dependabot-preview[bot] --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index dbaa0235e..68ed4e549 100644 --- a/package.json +++ b/package.json @@ -72,7 +72,7 @@ "@rollup/plugin-node-resolve": "^8.4.0", "@rollup/plugin-replace": "^2.3.3", "@size-limit/preset-small-lib": "^4.5.6", - "@types/jest": "^26.0.9", + "@types/jest": "^26.0.10", "@types/jsdom": "^16.2.3", "@types/webpack": "^4.41.21", "@types/webpack-env": "^1.15.2", diff --git a/yarn.lock b/yarn.lock index 9d121073f..03f33000e 100644 --- a/yarn.lock +++ b/yarn.lock @@ -813,10 +813,10 @@ "@types/istanbul-lib-coverage" "*" "@types/istanbul-lib-report" "*" -"@types/jest@^26.0.9": - version "26.0.9" - resolved "https://registry.yarnpkg.com/@types/jest/-/jest-26.0.9.tgz#0543b57da5f0cd949c5f423a00c56c492289c989" - integrity sha512-k4qFfJ5AUKrWok5KYXp2EPm89b0P/KZpl7Vg4XuOTVVQEhLDBDBU3iBFrjjdgd8fLw96aAtmnwhXHl63bWeBQQ== +"@types/jest@^26.0.10": + version "26.0.10" + resolved "https://registry.yarnpkg.com/@types/jest/-/jest-26.0.10.tgz#8faf7e9756c033c39014ae76a7329efea00ea607" + integrity sha512-i2m0oyh8w/Lum7wWK/YOZJakYF8Mx08UaKA1CtbmFeDquVhAEdA7znacsVSf2hJ1OQ/OfVMGN90pw/AtzF8s/Q== dependencies: jest-diff "^25.2.1" pretty-format "^25.2.1" From c2bb1c1211cebbfc23a2434faa9ec43c7d81badc Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Mon, 17 Aug 2020 09:19:55 +0000 Subject: [PATCH 0028/1422] build(deps-dev): bump @microsoft/api-documenter from 7.8.22 to 7.8.27 Bumps [@microsoft/api-documenter](https://github.com/microsoft/rushstack) from 7.8.22 to 7.8.27. - [Release notes](https://github.com/microsoft/rushstack/releases) - [Commits](https://github.com/microsoft/rushstack/compare/@microsoft/api-documenter_v7.8.22...@microsoft/api-documenter_v7.8.27) Signed-off-by: dependabot-preview[bot] --- package.json | 2 +- yarn.lock | 40 ++++++++++++++++++++-------------------- 2 files changed, 21 insertions(+), 21 deletions(-) diff --git a/package.json b/package.json index 68ed4e549..e9d72ae55 100644 --- a/package.json +++ b/package.json @@ -65,7 +65,7 @@ "attributes": "vetur/attributes.json" }, "devDependencies": { - "@microsoft/api-documenter": "^7.8.22", + "@microsoft/api-documenter": "^7.8.27", "@microsoft/api-extractor": "^7.8.1", "@rollup/plugin-alias": "^3.1.1", "@rollup/plugin-commonjs": "^14.0.0", diff --git a/yarn.lock b/yarn.lock index 03f33000e..886f4a453 100644 --- a/yarn.lock +++ b/yarn.lock @@ -483,15 +483,15 @@ "@types/yargs" "^15.0.0" chalk "^4.0.0" -"@microsoft/api-documenter@^7.8.22": - version "7.8.22" - resolved "https://registry.yarnpkg.com/@microsoft/api-documenter/-/api-documenter-7.8.22.tgz#0461a072161e1a32d85776df23f3d96fb44f6a25" - integrity sha512-Vsgx/sOPBn74PnkLhVN3yTg2ZiQc0cwrdxgKZCtfYLRh00qCTA/EhK+3cgIQqXf6ZPvvGj9VA5zMCpCHjC51dg== +"@microsoft/api-documenter@^7.8.27": + version "7.8.27" + resolved "https://registry.yarnpkg.com/@microsoft/api-documenter/-/api-documenter-7.8.27.tgz#aa18e975013171085b379dab01fad4b6ad0ccb69" + integrity sha512-fELVHf3qgnTm3doAkfiO5AN/5gUgBvhMw97dEG4OdHL/5kL2rnaowU8iHJnZgPyTfOoEX8dmzHKVT5uQp8JDmw== dependencies: - "@microsoft/api-extractor-model" "7.8.13" + "@microsoft/api-extractor-model" "7.8.15" "@microsoft/tsdoc" "0.12.19" - "@rushstack/node-core-library" "3.26.1" - "@rushstack/ts-command-line" "4.4.6" + "@rushstack/node-core-library" "3.27.0" + "@rushstack/ts-command-line" "4.4.8" colors "~1.2.1" js-yaml "~3.13.1" resolve "~1.17.0" @@ -504,13 +504,13 @@ "@microsoft/tsdoc" "0.12.19" "@rushstack/node-core-library" "3.19.7" -"@microsoft/api-extractor-model@7.8.13": - version "7.8.13" - resolved "https://registry.yarnpkg.com/@microsoft/api-extractor-model/-/api-extractor-model-7.8.13.tgz#1a191db5216b8407d4b55487275bd19f8016c094" - integrity sha512-SspJ84pZEZfF5jcVkwtdmgpnxjwMwJxQkK+v868jF6Ue/rJZ7WV/+qFB76gxLXNPsnVhF/xdS8s4AWXL0ePN8g== +"@microsoft/api-extractor-model@7.8.15": + version "7.8.15" + resolved "https://registry.yarnpkg.com/@microsoft/api-extractor-model/-/api-extractor-model-7.8.15.tgz#a9ade86180157aead2e63e5edb439c4d8f158049" + integrity sha512-z81RLrvZdCxPMDBH6JVtZAMMrxDsDGz4mW7GM6OGxPlooTtSVtPH9RNhZFbA6zp7/4ANgBlqURl8zIsxvFeppA== dependencies: "@microsoft/tsdoc" "0.12.19" - "@rushstack/node-core-library" "3.26.1" + "@rushstack/node-core-library" "3.27.0" "@microsoft/api-extractor@^7.8.1": version "7.8.1" @@ -616,10 +616,10 @@ timsort "~0.3.0" z-schema "~3.18.3" -"@rushstack/node-core-library@3.26.1": - version "3.26.1" - resolved "https://registry.yarnpkg.com/@rushstack/node-core-library/-/node-core-library-3.26.1.tgz#1ba3e32954e25f1a2b368f1c06bfc1f127d60463" - integrity sha512-N2wewcrJS2Jut73qxi711D1OXVKd9+8YmCllcjxEN++88qqqxCQVnn6Iu9ydu79Frm5rV8p/zvHOLCeUm/mLOQ== +"@rushstack/node-core-library@3.27.0": + version "3.27.0" + resolved "https://registry.yarnpkg.com/@rushstack/node-core-library/-/node-core-library-3.27.0.tgz#474446d29dcb5166946af2cd9ec86d58e1444b58" + integrity sha512-6fS7wqcxL4XGVFkhECMCqsqXouPRDWKMgNpyrmXJRS0PPumRMW+9m2knVK/kgTrMwcnbGysqxX/77PiFErw8wg== dependencies: "@types/node" "10.17.13" colors "~1.2.1" @@ -638,10 +638,10 @@ argparse "~1.0.9" colors "~1.2.1" -"@rushstack/ts-command-line@4.4.6": - version "4.4.6" - resolved "https://registry.yarnpkg.com/@rushstack/ts-command-line/-/ts-command-line-4.4.6.tgz#7818f19e444274e68564a756ef62a2b4e0ced0f8" - integrity sha512-ue3p2m773Yea/s4Ef2Q3gEyLd9T0NDjXCl+PlodGTrJHgxoiRwbROSWHAdYJL/LceGWa6Biqizu9qxUDEWFweQ== +"@rushstack/ts-command-line@4.4.8": + version "4.4.8" + resolved "https://registry.yarnpkg.com/@rushstack/ts-command-line/-/ts-command-line-4.4.8.tgz#46559932c7e9a70ea071c3ce376a2e7ad0d2e9b1" + integrity sha512-giyVXuyI2BAID0BINp8TbxcTf5MEao+UPadAMfCuuS64mSE1E76S8wzhjqEy3WaTSpgyRDi7dMlEegNnD/97Gw== dependencies: "@types/argparse" "1.0.38" argparse "~1.0.9" From 487196b018eec977ea7514bc45f8a89886bac4be Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Mon, 17 Aug 2020 09:41:11 +0000 Subject: [PATCH 0029/1422] build(deps-dev): bump rollup from 2.23.1 to 2.26.3 Bumps [rollup](https://github.com/rollup/rollup) from 2.23.1 to 2.26.3. - [Release notes](https://github.com/rollup/rollup/releases) - [Changelog](https://github.com/rollup/rollup/blob/master/CHANGELOG.md) - [Commits](https://github.com/rollup/rollup/compare/v2.23.1...v2.26.3) Signed-off-by: dependabot-preview[bot] --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index e9d72ae55..6afb14c24 100644 --- a/package.json +++ b/package.json @@ -94,7 +94,7 @@ "nightwatch": "^1.3.7", "nightwatch-helpers": "^1.2.0", "prettier": "^2.0.5", - "rollup": "^2.23.1", + "rollup": "^2.26.3", "rollup-plugin-terser": "^6.1.0", "rollup-plugin-typescript2": "^0.27.2", "selenium-server": "^3.141.59", diff --git a/yarn.lock b/yarn.lock index 886f4a453..49004f65c 100644 --- a/yarn.lock +++ b/yarn.lock @@ -8499,10 +8499,10 @@ rollup-plugin-typescript2@^0.27.2: resolve "1.17.0" tslib "2.0.1" -rollup@^2.23.1: - version "2.23.1" - resolved "https://registry.yarnpkg.com/rollup/-/rollup-2.23.1.tgz#d458d28386dc7660c2e8a4978bea6f9494046c20" - integrity sha512-Heyl885+lyN/giQwxA8AYT2GY3U+gOlTqVLrMQYno8Z1X9lAOpfXPiKiZCyPc25e9BLJM3Zlh957dpTlO4pa8A== +rollup@^2.26.3: + version "2.26.3" + resolved "https://registry.yarnpkg.com/rollup/-/rollup-2.26.3.tgz#502c755872a4590937cfa4e8f7eb99d3bc3c4025" + integrity sha512-Mlt39/kL2rA9egcbQbaZV1SNVplGqYYhDDMcGgHPPE0tvM3R4GrB+IEdYy2QtTrdzMQx57ZcqDFf/KWWm8F+uw== optionalDependencies: fsevents "~2.1.2" From 48e384875cede8ab392de8c8ae085dfc63ff82b4 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Mon, 17 Aug 2020 09:41:09 +0000 Subject: [PATCH 0030/1422] build(deps-dev): bump jest from 26.2.2 to 26.4.0 Bumps [jest](https://github.com/facebook/jest) from 26.2.2 to 26.4.0. - [Release notes](https://github.com/facebook/jest/releases) - [Changelog](https://github.com/facebook/jest/blob/master/CHANGELOG.md) - [Commits](https://github.com/facebook/jest/compare/v26.2.2...v26.4.0) Signed-off-by: dependabot-preview[bot] --- package.json | 2 +- yarn.lock | 702 ++++++++++++++++++++++++++------------------------- 2 files changed, 362 insertions(+), 342 deletions(-) diff --git a/package.json b/package.json index 6afb14c24..7dbae5e35 100644 --- a/package.json +++ b/package.json @@ -88,7 +88,7 @@ "dotenv": "^8.2.0", "faked-promise": "^2.2.2", "html-webpack-plugin": "^4.3.0", - "jest": "^26.2.2", + "jest": "^26.4.0", "jest-mock-warn": "^1.1.0", "lint-staged": "^10.2.11", "nightwatch": "^1.3.7", diff --git a/yarn.lock b/yarn.lock index 49004f65c..5019c859e 100644 --- a/yarn.lock +++ b/yarn.lock @@ -96,6 +96,11 @@ resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.8.3.tgz#9ea293be19babc0f52ff8ca88b34c3611b208670" integrity sha512-j+fq49Xds2smCUNYmEHF9kGNkhbet6yVIBp4e6oeQpH1RUs/Ir06xUKzDjDkGcaaokPiTNs2JBWHjaE4csUkZQ== +"@babel/helper-plugin-utils@^7.10.4": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.10.4.tgz#2f75a831269d4f677de49986dff59927533cf375" + integrity sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg== + "@babel/helper-replace-supers@^7.8.6": version "7.9.6" resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.9.6.tgz#03149d7e6a5586ab6764996cd31d6981a17e1444" @@ -175,6 +180,13 @@ dependencies: "@babel/helper-plugin-utils" "^7.8.3" +"@babel/plugin-syntax-import-meta@^7.8.3": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz#ee601348c370fa334d2207be158777496521fd51" + integrity sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g== + dependencies: + "@babel/helper-plugin-utils" "^7.10.4" + "@babel/plugin-syntax-json-strings@^7.8.3": version "7.8.3" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz#01ca21b668cd8218c9e640cb6dd88c5412b2c96a" @@ -292,93 +304,93 @@ resolved "https://registry.yarnpkg.com/@istanbuljs/schema/-/schema-0.1.2.tgz#26520bf09abe4a5644cd5414e37125a8954241dd" integrity sha512-tsAQNx32a8CoFhjhijUIhI4kccIAgmGhy8LZMZgGfmXcpMbPRUqn5LWmgRttILi6yeGmBJd2xsPkFMs0PzgPCw== -"@jest/console@^26.2.0": - version "26.2.0" - resolved "https://registry.yarnpkg.com/@jest/console/-/console-26.2.0.tgz#d18f2659b90930e7ec3925fb7209f1ba2cf463f0" - integrity sha512-mXQfx3nSLwiHm1i7jbu+uvi+vvpVjNGzIQYLCfsat9rapC+MJkS4zBseNrgJE0vU921b3P67bQzhduphjY3Tig== +"@jest/console@^26.3.0": + version "26.3.0" + resolved "https://registry.yarnpkg.com/@jest/console/-/console-26.3.0.tgz#ed04063efb280c88ba87388b6f16427c0a85c856" + integrity sha512-/5Pn6sJev0nPUcAdpJHMVIsA8sKizL2ZkcKPE5+dJrCccks7tcM7c9wbgHudBJbxXLoTbqsHkG1Dofoem4F09w== dependencies: - "@jest/types" "^26.2.0" + "@jest/types" "^26.3.0" "@types/node" "*" chalk "^4.0.0" - jest-message-util "^26.2.0" - jest-util "^26.2.0" + jest-message-util "^26.3.0" + jest-util "^26.3.0" slash "^3.0.0" -"@jest/core@^26.2.2": - version "26.2.2" - resolved "https://registry.yarnpkg.com/@jest/core/-/core-26.2.2.tgz#63de01ffce967618003dd7a0164b05c8041b81a9" - integrity sha512-UwA8gNI8aeV4FHGfGAUfO/DHjrFVvlBravF1Tm9Kt6qFE+6YHR47kFhgdepOFpADEKstyO+MVdPvkV6/dyt9sA== +"@jest/core@^26.4.0": + version "26.4.0" + resolved "https://registry.yarnpkg.com/@jest/core/-/core-26.4.0.tgz#8f42ae45640b46b4f8ffee134dcd408c210ab1ef" + integrity sha512-mpXm4OjWQbz7qbzGIiSqvfNZ1FxX6ywWgLtdSD2luPORt5zKPtqcdDnX7L8RdfMaj1znDBgN2+gB094ZIr7vnA== dependencies: - "@jest/console" "^26.2.0" - "@jest/reporters" "^26.2.2" - "@jest/test-result" "^26.2.0" - "@jest/transform" "^26.2.2" - "@jest/types" "^26.2.0" + "@jest/console" "^26.3.0" + "@jest/reporters" "^26.4.0" + "@jest/test-result" "^26.3.0" + "@jest/transform" "^26.3.0" + "@jest/types" "^26.3.0" "@types/node" "*" ansi-escapes "^4.2.1" chalk "^4.0.0" exit "^0.1.2" graceful-fs "^4.2.4" - jest-changed-files "^26.2.0" - jest-config "^26.2.2" - jest-haste-map "^26.2.2" - jest-message-util "^26.2.0" + jest-changed-files "^26.3.0" + jest-config "^26.4.0" + jest-haste-map "^26.3.0" + jest-message-util "^26.3.0" jest-regex-util "^26.0.0" - jest-resolve "^26.2.2" - jest-resolve-dependencies "^26.2.2" - jest-runner "^26.2.2" - jest-runtime "^26.2.2" - jest-snapshot "^26.2.2" - jest-util "^26.2.0" - jest-validate "^26.2.0" - jest-watcher "^26.2.0" + jest-resolve "^26.4.0" + jest-resolve-dependencies "^26.4.0" + jest-runner "^26.4.0" + jest-runtime "^26.4.0" + jest-snapshot "^26.4.0" + jest-util "^26.3.0" + jest-validate "^26.4.0" + jest-watcher "^26.3.0" micromatch "^4.0.2" p-each-series "^2.1.0" rimraf "^3.0.0" slash "^3.0.0" strip-ansi "^6.0.0" -"@jest/environment@^26.2.0": - version "26.2.0" - resolved "https://registry.yarnpkg.com/@jest/environment/-/environment-26.2.0.tgz#f6faee1630fcc2fad208953164bccb31dbe0e45f" - integrity sha512-oCgp9NmEiJ5rbq9VI/v/yYLDpladAAVvFxZgNsnJxOETuzPZ0ZcKKHYjKYwCtPOP1WCrM5nmyuOhMStXFGHn+g== +"@jest/environment@^26.3.0": + version "26.3.0" + resolved "https://registry.yarnpkg.com/@jest/environment/-/environment-26.3.0.tgz#e6953ab711ae3e44754a025f838bde1a7fd236a0" + integrity sha512-EW+MFEo0DGHahf83RAaiqQx688qpXgl99wdb8Fy67ybyzHwR1a58LHcO376xQJHfmoXTu89M09dH3J509cx2AA== dependencies: - "@jest/fake-timers" "^26.2.0" - "@jest/types" "^26.2.0" + "@jest/fake-timers" "^26.3.0" + "@jest/types" "^26.3.0" "@types/node" "*" - jest-mock "^26.2.0" + jest-mock "^26.3.0" -"@jest/fake-timers@^26.2.0": - version "26.2.0" - resolved "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-26.2.0.tgz#b485c57dc4c74d61406a339807a9af4bac74b75a" - integrity sha512-45Gfe7YzYTKqTayBrEdAF0qYyAsNRBzfkV0IyVUm3cx7AsCWlnjilBM4T40w7IXT5VspOgMPikQlV0M6gHwy/g== +"@jest/fake-timers@^26.3.0": + version "26.3.0" + resolved "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-26.3.0.tgz#f515d4667a6770f60ae06ae050f4e001126c666a" + integrity sha512-ZL9ytUiRwVP8ujfRepffokBvD2KbxbqMhrXSBhSdAhISCw3gOkuntisiSFv+A6HN0n0fF4cxzICEKZENLmW+1A== dependencies: - "@jest/types" "^26.2.0" + "@jest/types" "^26.3.0" "@sinonjs/fake-timers" "^6.0.1" "@types/node" "*" - jest-message-util "^26.2.0" - jest-mock "^26.2.0" - jest-util "^26.2.0" + jest-message-util "^26.3.0" + jest-mock "^26.3.0" + jest-util "^26.3.0" -"@jest/globals@^26.2.0": - version "26.2.0" - resolved "https://registry.yarnpkg.com/@jest/globals/-/globals-26.2.0.tgz#ad78f1104f250c1a4bf5184a2ba51facc59b23f6" - integrity sha512-Hoc6ScEIPaym7RNytIL2ILSUWIGKlwEv+JNFof9dGYOdvPjb2evEURSslvCMkNuNg1ECEClTE8PH7ULlMJntYA== +"@jest/globals@^26.4.0": + version "26.4.0" + resolved "https://registry.yarnpkg.com/@jest/globals/-/globals-26.4.0.tgz#ebab3ba937a200a4b3805f2e552bdf869465ffea" + integrity sha512-QKwoVAeL9d0xaEM9ebPvfc+bolN04F+o3zM2jswGDBiiNjCogZ3LvOaqumRdDyz6kLmbx+UhgMBAVuLunbXZ2A== dependencies: - "@jest/environment" "^26.2.0" - "@jest/types" "^26.2.0" - expect "^26.2.0" + "@jest/environment" "^26.3.0" + "@jest/types" "^26.3.0" + expect "^26.4.0" -"@jest/reporters@^26.2.2": - version "26.2.2" - resolved "https://registry.yarnpkg.com/@jest/reporters/-/reporters-26.2.2.tgz#5a8632ab410f4fc57782bc05dcf115e91818e869" - integrity sha512-7854GPbdFTAorWVh+RNHyPO9waRIN6TcvCezKVxI1khvFq9YjINTW7J3WU+tbR038Ynn6WjYred6vtT0YmIWVQ== +"@jest/reporters@^26.4.0": + version "26.4.0" + resolved "https://registry.yarnpkg.com/@jest/reporters/-/reporters-26.4.0.tgz#dd3f03979170dd25dc6a9b746c693b591056d753" + integrity sha512-14OPAAuYhgRBSNxAocVluX6ksdMdK/EuP9NmtBXU9g1uKaVBrPnohn/CVm6iMot1a9iU8BCxa5715YRf8FEg/A== dependencies: "@bcoe/v8-coverage" "^0.2.3" - "@jest/console" "^26.2.0" - "@jest/test-result" "^26.2.0" - "@jest/transform" "^26.2.2" - "@jest/types" "^26.2.0" + "@jest/console" "^26.3.0" + "@jest/test-result" "^26.3.0" + "@jest/transform" "^26.3.0" + "@jest/types" "^26.3.0" chalk "^4.0.0" collect-v8-coverage "^1.0.0" exit "^0.1.2" @@ -389,63 +401,63 @@ istanbul-lib-report "^3.0.0" istanbul-lib-source-maps "^4.0.0" istanbul-reports "^3.0.2" - jest-haste-map "^26.2.2" - jest-resolve "^26.2.2" - jest-util "^26.2.0" - jest-worker "^26.2.1" + jest-haste-map "^26.3.0" + jest-resolve "^26.4.0" + jest-util "^26.3.0" + jest-worker "^26.3.0" slash "^3.0.0" source-map "^0.6.0" string-length "^4.0.1" terminal-link "^2.0.0" - v8-to-istanbul "^4.1.3" + v8-to-istanbul "^5.0.1" optionalDependencies: node-notifier "^7.0.0" -"@jest/source-map@^26.1.0": - version "26.1.0" - resolved "https://registry.yarnpkg.com/@jest/source-map/-/source-map-26.1.0.tgz#a6a020d00e7d9478f4b690167c5e8b77e63adb26" - integrity sha512-XYRPYx4eEVX15cMT9mstnO7hkHP3krNtKfxUYd8L7gbtia8JvZZ6bMzSwa6IQJENbudTwKMw5R1BePRD+bkEmA== +"@jest/source-map@^26.3.0": + version "26.3.0" + resolved "https://registry.yarnpkg.com/@jest/source-map/-/source-map-26.3.0.tgz#0e646e519883c14c551f7b5ae4ff5f1bfe4fc3d9" + integrity sha512-hWX5IHmMDWe1kyrKl7IhFwqOuAreIwHhbe44+XH2ZRHjrKIh0LO5eLQ/vxHFeAfRwJapmxuqlGAEYLadDq6ZGQ== dependencies: callsites "^3.0.0" graceful-fs "^4.2.4" source-map "^0.6.0" -"@jest/test-result@^26.2.0": - version "26.2.0" - resolved "https://registry.yarnpkg.com/@jest/test-result/-/test-result-26.2.0.tgz#51c9b165c8851cfcf7a3466019114785e154f76b" - integrity sha512-kgPlmcVafpmfyQEu36HClK+CWI6wIaAWDHNxfQtGuKsgoa2uQAYdlxjMDBEa3CvI40+2U3v36gQF6oZBkoKatw== +"@jest/test-result@^26.3.0": + version "26.3.0" + resolved "https://registry.yarnpkg.com/@jest/test-result/-/test-result-26.3.0.tgz#46cde01fa10c0aaeb7431bf71e4a20d885bc7fdb" + integrity sha512-a8rbLqzW/q7HWheFVMtghXV79Xk+GWwOK1FrtimpI5n1la2SY0qHri3/b0/1F0Ve0/yJmV8pEhxDfVwiUBGtgg== dependencies: - "@jest/console" "^26.2.0" - "@jest/types" "^26.2.0" + "@jest/console" "^26.3.0" + "@jest/types" "^26.3.0" "@types/istanbul-lib-coverage" "^2.0.0" collect-v8-coverage "^1.0.0" -"@jest/test-sequencer@^26.2.2": - version "26.2.2" - resolved "https://registry.yarnpkg.com/@jest/test-sequencer/-/test-sequencer-26.2.2.tgz#5e8091f2e6c61fdf242af566cb820a4eadc6c4af" - integrity sha512-SliZWon5LNqV/lVXkeowSU6L8++FGOu3f43T01L1Gv6wnFDP00ER0utV9jyK9dVNdXqfMNCN66sfcyar/o7BNw== +"@jest/test-sequencer@^26.4.0": + version "26.4.0" + resolved "https://registry.yarnpkg.com/@jest/test-sequencer/-/test-sequencer-26.4.0.tgz#f4902772392d478d310dd6fd3b6818fb4bcc4c82" + integrity sha512-9Z7lCShS7vERp+DRwIVNH/6sHMWwJK1DPnGCpGeVLGJJWJ4Y08sQI3vIKdmKHu2KmwlUBpRM+BFf7NlVUkl5XA== dependencies: - "@jest/test-result" "^26.2.0" + "@jest/test-result" "^26.3.0" graceful-fs "^4.2.4" - jest-haste-map "^26.2.2" - jest-runner "^26.2.2" - jest-runtime "^26.2.2" + jest-haste-map "^26.3.0" + jest-runner "^26.4.0" + jest-runtime "^26.4.0" -"@jest/transform@^26.2.2": - version "26.2.2" - resolved "https://registry.yarnpkg.com/@jest/transform/-/transform-26.2.2.tgz#86c005c8d5d749ac54d8df53ea58675fffe7a97e" - integrity sha512-c1snhvi5wRVre1XyoO3Eef5SEWpuBCH/cEbntBUd9tI5sNYiBDmO0My/lc5IuuGYKp/HFIHV1eZpSx5yjdkhKw== +"@jest/transform@^26.3.0": + version "26.3.0" + resolved "https://registry.yarnpkg.com/@jest/transform/-/transform-26.3.0.tgz#c393e0e01459da8a8bfc6d2a7c2ece1a13e8ba55" + integrity sha512-Isj6NB68QorGoFWvcOjlUhpkT56PqNIsXKR7XfvoDlCANn/IANlh8DrKAA2l2JKC3yWSMH5wS0GwuQM20w3b2A== dependencies: "@babel/core" "^7.1.0" - "@jest/types" "^26.2.0" + "@jest/types" "^26.3.0" babel-plugin-istanbul "^6.0.0" chalk "^4.0.0" convert-source-map "^1.4.0" fast-json-stable-stringify "^2.0.0" graceful-fs "^4.2.4" - jest-haste-map "^26.2.2" + jest-haste-map "^26.3.0" jest-regex-util "^26.0.0" - jest-util "^26.2.0" + jest-util "^26.3.0" micromatch "^4.0.2" pirates "^4.0.1" slash "^3.0.0" @@ -472,13 +484,13 @@ "@types/yargs" "^15.0.0" chalk "^4.0.0" -"@jest/types@^26.2.0": - version "26.2.0" - resolved "https://registry.yarnpkg.com/@jest/types/-/types-26.2.0.tgz#b28ca1fb517a4eb48c0addea7fcd9edc4ab45721" - integrity sha512-lvm3rJvctxd7+wxKSxxbzpDbr4FXDLaC57WEKdUIZ2cjTYuxYSc0zlyD7Z4Uqr5VdKxRUrtwIkiqBuvgf8uKJA== +"@jest/types@^26.3.0": + version "26.3.0" + resolved "https://registry.yarnpkg.com/@jest/types/-/types-26.3.0.tgz#97627bf4bdb72c55346eef98e3b3f7ddc4941f71" + integrity sha512-BDPG23U0qDeAvU4f99haztXwdAg3hz4El95LkAM+tHAqqhiVzRpEGHHU8EDxT/AnxOrA65YjLBwDahdJ9pTLJQ== dependencies: "@types/istanbul-lib-coverage" "^2.0.0" - "@types/istanbul-reports" "^1.1.1" + "@types/istanbul-reports" "^3.0.0" "@types/node" "*" "@types/yargs" "^15.0.0" chalk "^4.0.0" @@ -813,6 +825,13 @@ "@types/istanbul-lib-coverage" "*" "@types/istanbul-lib-report" "*" +"@types/istanbul-reports@^3.0.0": + version "3.0.0" + resolved "https://registry.yarnpkg.com/@types/istanbul-reports/-/istanbul-reports-3.0.0.tgz#508b13aa344fa4976234e75dddcc34925737d821" + integrity sha512-nwKNbvnwJ2/mndE9ItP/zc2TCzw6uuodnF4EHYWD+gCQDVBuRQL5UzbZD0/ezy1iKsFU2ZQiDqg4M9dN4+wZgA== + dependencies: + "@types/istanbul-lib-report" "*" + "@types/jest@^26.0.10": version "26.0.10" resolved "https://registry.yarnpkg.com/@types/jest/-/jest-26.0.10.tgz#8faf7e9756c033c39014ae76a7329efea00ea607" @@ -1587,16 +1606,16 @@ axios@^0.19.2: dependencies: follow-redirects "1.5.10" -babel-jest@^26.2.2: - version "26.2.2" - resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-26.2.2.tgz#70f618f2d7016ed71b232241199308985462f812" - integrity sha512-JmLuePHgA+DSOdOL8lPxCgD2LhPPm+rdw1vnxR73PpIrnmKCS2/aBhtkAcxQWuUcW2hBrH8MJ3LKXE7aWpNZyA== +babel-jest@^26.3.0: + version "26.3.0" + resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-26.3.0.tgz#10d0ca4b529ca3e7d1417855ef7d7bd6fc0c3463" + integrity sha512-sxPnQGEyHAOPF8NcUsD0g7hDCnvLL2XyblRBcgrzTWBB/mAIpWow3n1bEL+VghnnZfreLhFSBsFluRoK2tRK4g== dependencies: - "@jest/transform" "^26.2.2" - "@jest/types" "^26.2.0" + "@jest/transform" "^26.3.0" + "@jest/types" "^26.3.0" "@types/babel__core" "^7.1.7" babel-plugin-istanbul "^6.0.0" - babel-preset-jest "^26.2.0" + babel-preset-jest "^26.3.0" chalk "^4.0.0" graceful-fs "^4.2.4" slash "^3.0.0" @@ -1622,14 +1641,15 @@ babel-plugin-jest-hoist@^26.2.0: "@types/babel__core" "^7.0.0" "@types/babel__traverse" "^7.0.6" -babel-preset-current-node-syntax@^0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-0.1.2.tgz#fb4a4c51fe38ca60fede1dc74ab35eb843cb41d6" - integrity sha512-u/8cS+dEiK1SFILbOC8/rUI3ml9lboKuuMvZ/4aQnQmhecQAgPw5ew066C1ObnEAUmlx7dv/s2z52psWEtLNiw== +babel-preset-current-node-syntax@^0.1.3: + version "0.1.3" + resolved "https://registry.yarnpkg.com/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-0.1.3.tgz#b4b547acddbf963cba555ba9f9cbbb70bfd044da" + integrity sha512-uyexu1sVwcdFnyq9o8UQYsXwXflIh8LvrF5+cKrYam93ned1CStffB3+BEcsxGSgagoA3GEyjDqO4a/58hyPYQ== dependencies: "@babel/plugin-syntax-async-generators" "^7.8.4" "@babel/plugin-syntax-bigint" "^7.8.3" "@babel/plugin-syntax-class-properties" "^7.8.3" + "@babel/plugin-syntax-import-meta" "^7.8.3" "@babel/plugin-syntax-json-strings" "^7.8.3" "@babel/plugin-syntax-logical-assignment-operators" "^7.8.3" "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.3" @@ -1638,13 +1658,13 @@ babel-preset-current-node-syntax@^0.1.2: "@babel/plugin-syntax-optional-catch-binding" "^7.8.3" "@babel/plugin-syntax-optional-chaining" "^7.8.3" -babel-preset-jest@^26.2.0: - version "26.2.0" - resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-26.2.0.tgz#f198201a4e543a43eb40bc481e19736e095fd3e0" - integrity sha512-R1k8kdP3R9phYQugXeNnK/nvCGlBzG4m3EoIIukC80GXb6wCv2XiwPhK6K9MAkQcMszWBYvl2Wm+yigyXFQqXg== +babel-preset-jest@^26.3.0: + version "26.3.0" + resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-26.3.0.tgz#ed6344506225c065fd8a0b53e191986f74890776" + integrity sha512-5WPdf7nyYi2/eRxCbVrE1kKCWxgWY4RsPEbdJWFm7QsesFGqjdkyLeu1zRkwM1cxK6EPIlNd6d2AxLk7J+t4pw== dependencies: babel-plugin-jest-hoist "^26.2.0" - babel-preset-current-node-syntax "^0.1.2" + babel-preset-current-node-syntax "^0.1.3" balanced-match@^1.0.0: version "1.0.0" @@ -3238,10 +3258,10 @@ diff-sequences@^25.2.6: resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-25.2.6.tgz#5f467c00edd35352b7bca46d7927d60e687a76dd" integrity sha512-Hq8o7+6GaZeoFjtpgvRBUknSXNeJiCx7V9Fr94ZMljNiCr9n9L8H8aJqgWOQiDDGdyn29fRNcDdRVJ5fdyihfg== -diff-sequences@^26.0.0: - version "26.0.0" - resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-26.0.0.tgz#0760059a5c287637b842bd7085311db7060e88a6" - integrity sha512-JC/eHYEC3aSS0vZGjuoc4vHA0yAQTzhQQldXMeMF+JlxLGJlCO38Gma82NV9gk1jGFz8mDzUMeaKXvjRRdJ2dg== +diff-sequences@^26.3.0: + version "26.3.0" + resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-26.3.0.tgz#62a59b1b29ab7fd27cef2a33ae52abe73042d0a2" + integrity sha512-5j5vdRcw3CNctePNYN0Wy2e/JbWT6cAYnXv5OuqPhDpyCGc0uLu2TK0zOCJWNB9kOIfYMSpIulRaDgIi4HJ6Ig== diff@3.5.0: version "3.5.0" @@ -3731,16 +3751,16 @@ expand-tilde@^2.0.0, expand-tilde@^2.0.2: dependencies: homedir-polyfill "^1.0.1" -expect@^26.2.0: - version "26.2.0" - resolved "https://registry.yarnpkg.com/expect/-/expect-26.2.0.tgz#0140dd9cc7376d7833852e9cda88c05414f1efba" - integrity sha512-8AMBQ9UVcoUXt0B7v+5/U5H6yiUR87L6eKCfjE3spx7Ya5lF+ebUo37MCFBML2OiLfkX1sxmQOZhIDonyVTkcw== +expect@^26.4.0: + version "26.4.0" + resolved "https://registry.yarnpkg.com/expect/-/expect-26.4.0.tgz#34a0aae523343b0931ff1cf0aa972dfe40edfab4" + integrity sha512-dbYDJhFcqQsamlos6nEwAMe+ahdckJBk5fmw1DYGLQGabGSlUuT+Fm2jHYw5119zG3uIhP+lCQbjJhFEdZMJtg== dependencies: - "@jest/types" "^26.2.0" + "@jest/types" "^26.3.0" ansi-styles "^4.0.0" - jest-get-type "^26.0.0" - jest-matcher-utils "^26.2.0" - jest-message-util "^26.2.0" + jest-get-type "^26.3.0" + jest-matcher-utils "^26.4.0" + jest-message-util "^26.3.0" jest-regex-util "^26.0.0" express@^4.16.3, express@^4.17.1: @@ -5367,57 +5387,57 @@ istanbul-reports@^3.0.2: html-escaper "^2.0.0" istanbul-lib-report "^3.0.0" -jest-changed-files@^26.2.0: - version "26.2.0" - resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-26.2.0.tgz#b4946201defe0c919a2f3d601e9f98cb21dacc15" - integrity sha512-+RyJb+F1K/XBLIYiL449vo5D+CvlHv29QveJUWNPXuUicyZcq+tf1wNxmmFeRvAU1+TzhwqczSjxnCCFt7+8iA== +jest-changed-files@^26.3.0: + version "26.3.0" + resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-26.3.0.tgz#68fb2a7eb125f50839dab1f5a17db3607fe195b1" + integrity sha512-1C4R4nijgPltX6fugKxM4oQ18zimS7LqQ+zTTY8lMCMFPrxqBFb7KJH0Z2fRQJvw2Slbaipsqq7s1mgX5Iot+g== dependencies: - "@jest/types" "^26.2.0" + "@jest/types" "^26.3.0" execa "^4.0.0" throat "^5.0.0" -jest-cli@^26.2.2: - version "26.2.2" - resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-26.2.2.tgz#4c273e5474baafac1eb15fd25aaafb4703f5ffbc" - integrity sha512-vVcly0n/ijZvdy6gPQiQt0YANwX2hLTPQZHtW7Vi3gcFdKTtif7YpI85F8R8JYy5DFSWz4x1OW0arnxlziu5Lw== +jest-cli@^26.4.0: + version "26.4.0" + resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-26.4.0.tgz#9cbd6be818cd818d85bafe2cffa1dbf043602b28" + integrity sha512-kw2Pr3V2x9/WzSDGsbz/MJBNlCoPMxMudrIavft4bqRlv5tASjU51tyO+1Os1LdW2dAnLQZYsxFUZ8oWPyssGQ== dependencies: - "@jest/core" "^26.2.2" - "@jest/test-result" "^26.2.0" - "@jest/types" "^26.2.0" + "@jest/core" "^26.4.0" + "@jest/test-result" "^26.3.0" + "@jest/types" "^26.3.0" chalk "^4.0.0" exit "^0.1.2" graceful-fs "^4.2.4" import-local "^3.0.2" is-ci "^2.0.0" - jest-config "^26.2.2" - jest-util "^26.2.0" - jest-validate "^26.2.0" + jest-config "^26.4.0" + jest-util "^26.3.0" + jest-validate "^26.4.0" prompts "^2.0.1" yargs "^15.3.1" -jest-config@^26.2.2: - version "26.2.2" - resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-26.2.2.tgz#f3ebc7e2bc3f49de8ed3f8007152f345bb111917" - integrity sha512-2lhxH0y4YFOijMJ65usuf78m7+9/8+hAb1PZQtdRdgnQpAb4zP6KcVDDktpHEkspBKnc2lmFu+RQdHukUUbiTg== +jest-config@^26.4.0: + version "26.4.0" + resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-26.4.0.tgz#72ff3d0418b7ee7fdd9e2bcaef4dec10b38b3b02" + integrity sha512-MxsvrBug8YY+C4QcUBtmgnHyFeW7w3Ouk/w9eplCDN8VJGVyBEZFe8Lxzfp2pSqh0Dqurqv8Oik2YkbekGUlxg== dependencies: "@babel/core" "^7.1.0" - "@jest/test-sequencer" "^26.2.2" - "@jest/types" "^26.2.0" - babel-jest "^26.2.2" + "@jest/test-sequencer" "^26.4.0" + "@jest/types" "^26.3.0" + babel-jest "^26.3.0" chalk "^4.0.0" deepmerge "^4.2.2" glob "^7.1.1" graceful-fs "^4.2.4" - jest-environment-jsdom "^26.2.0" - jest-environment-node "^26.2.0" - jest-get-type "^26.0.0" - jest-jasmine2 "^26.2.2" + jest-environment-jsdom "^26.3.0" + jest-environment-node "^26.3.0" + jest-get-type "^26.3.0" + jest-jasmine2 "^26.4.0" jest-regex-util "^26.0.0" - jest-resolve "^26.2.2" - jest-util "^26.2.0" - jest-validate "^26.2.0" + jest-resolve "^26.4.0" + jest-util "^26.3.0" + jest-validate "^26.4.0" micromatch "^4.0.2" - pretty-format "^26.2.0" + pretty-format "^26.4.0" jest-diff@^25.2.1: version "25.5.0" @@ -5429,15 +5449,15 @@ jest-diff@^25.2.1: jest-get-type "^25.2.6" pretty-format "^25.5.0" -jest-diff@^26.2.0: - version "26.2.0" - resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-26.2.0.tgz#dee62c771adbb23ae585f3f1bd289a6e8ef4f298" - integrity sha512-Wu4Aopi2nzCsHWLBlD48TgRy3Z7OsxlwvHNd1YSnHc7q1NJfrmyCPoUXrTIrydQOG5ApaYpsAsdfnMbJqV1/wQ== +jest-diff@^26.4.0: + version "26.4.0" + resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-26.4.0.tgz#d073a0a11952b5bd9f1ff39bb9ad24304a0c55f7" + integrity sha512-wwC38HlOW+iTq6j5tkj/ZamHn6/nrdcEOc/fKaVILNtN2NLWGdkfRaHWwfNYr5ehaLvuoG2LfCZIcWByVj0gjg== dependencies: chalk "^4.0.0" - diff-sequences "^26.0.0" - jest-get-type "^26.0.0" - pretty-format "^26.2.0" + diff-sequences "^26.3.0" + jest-get-type "^26.3.0" + pretty-format "^26.4.0" jest-docblock@^26.0.0: version "26.0.0" @@ -5446,122 +5466,122 @@ jest-docblock@^26.0.0: dependencies: detect-newline "^3.0.0" -jest-each@^26.2.0: - version "26.2.0" - resolved "https://registry.yarnpkg.com/jest-each/-/jest-each-26.2.0.tgz#aec8efa01d072d7982c900e74940863385fa884e" - integrity sha512-gHPCaho1twWHB5bpcfnozlc6mrMi+VAewVPNgmwf81x2Gzr6XO4dl+eOrwPWxbkYlgjgrYjWK2xgKnixbzH3Ew== +jest-each@^26.4.0: + version "26.4.0" + resolved "https://registry.yarnpkg.com/jest-each/-/jest-each-26.4.0.tgz#c53605b20e7a0a58d6dcf4d8b2f309e607d35d5a" + integrity sha512-+cyBh1ehs6thVT/bsZVG+WwmRn2ix4Q4noS9yLZgM10yGWPW12/TDvwuOV2VZXn1gi09/ZwJKJWql6YW1C9zNw== dependencies: - "@jest/types" "^26.2.0" + "@jest/types" "^26.3.0" chalk "^4.0.0" - jest-get-type "^26.0.0" - jest-util "^26.2.0" - pretty-format "^26.2.0" - -jest-environment-jsdom@^26.2.0: - version "26.2.0" - resolved "https://registry.yarnpkg.com/jest-environment-jsdom/-/jest-environment-jsdom-26.2.0.tgz#6443a6f3569297dcaa4371dddf93acaf167302dc" - integrity sha512-sDG24+5M4NuIGzkI3rJW8XUlrpkvIdE9Zz4jhD8OBnVxAw+Y1jUk9X+lAOD48nlfUTlnt3lbAI3k2Ox+WF3S0g== - dependencies: - "@jest/environment" "^26.2.0" - "@jest/fake-timers" "^26.2.0" - "@jest/types" "^26.2.0" + jest-get-type "^26.3.0" + jest-util "^26.3.0" + pretty-format "^26.4.0" + +jest-environment-jsdom@^26.3.0: + version "26.3.0" + resolved "https://registry.yarnpkg.com/jest-environment-jsdom/-/jest-environment-jsdom-26.3.0.tgz#3b749ba0f3a78e92ba2c9ce519e16e5dd515220c" + integrity sha512-zra8He2btIMJkAzvLaiZ9QwEPGEetbxqmjEBQwhH3CA+Hhhu0jSiEJxnJMbX28TGUvPLxBt/zyaTLrOPF4yMJA== + dependencies: + "@jest/environment" "^26.3.0" + "@jest/fake-timers" "^26.3.0" + "@jest/types" "^26.3.0" "@types/node" "*" - jest-mock "^26.2.0" - jest-util "^26.2.0" + jest-mock "^26.3.0" + jest-util "^26.3.0" jsdom "^16.2.2" -jest-environment-node@^26.2.0: - version "26.2.0" - resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-26.2.0.tgz#fee89e06bdd4bed3f75ee2978d73ede9bb57a681" - integrity sha512-4M5ExTYkJ19efBzkiXtBi74JqKLDciEk4CEsp5tTjWGYMrlKFQFtwIVG3tW1OGE0AlXhZjuHPwubuRYY4j4uOw== +jest-environment-node@^26.3.0: + version "26.3.0" + resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-26.3.0.tgz#56c6cfb506d1597f94ee8d717072bda7228df849" + integrity sha512-c9BvYoo+FGcMj5FunbBgtBnbR5qk3uky8PKyRVpSfe2/8+LrNQMiXX53z6q2kY+j15SkjQCOSL/6LHnCPLVHNw== dependencies: - "@jest/environment" "^26.2.0" - "@jest/fake-timers" "^26.2.0" - "@jest/types" "^26.2.0" + "@jest/environment" "^26.3.0" + "@jest/fake-timers" "^26.3.0" + "@jest/types" "^26.3.0" "@types/node" "*" - jest-mock "^26.2.0" - jest-util "^26.2.0" + jest-mock "^26.3.0" + jest-util "^26.3.0" jest-get-type@^25.2.6: version "25.2.6" resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-25.2.6.tgz#0b0a32fab8908b44d508be81681487dbabb8d877" integrity sha512-DxjtyzOHjObRM+sM1knti6or+eOgcGU4xVSb2HNP1TqO4ahsT+rqZg+nyqHWJSvWgKC5cG3QjGFBqxLghiF/Ig== -jest-get-type@^26.0.0: - version "26.0.0" - resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-26.0.0.tgz#381e986a718998dbfafcd5ec05934be538db4039" - integrity sha512-zRc1OAPnnws1EVfykXOj19zo2EMw5Hi6HLbFCSjpuJiXtOWAYIjNsHVSbpQ8bDX7L5BGYGI8m+HmKdjHYFF0kg== +jest-get-type@^26.3.0: + version "26.3.0" + resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-26.3.0.tgz#e97dc3c3f53c2b406ca7afaed4493b1d099199e0" + integrity sha512-TpfaviN1R2pQWkIihlfEanwOXK0zcxrKEE4MlU6Tn7keoXdN6/3gK/xl0yEh8DOunn5pOVGKf8hB4R9gVh04ig== -jest-haste-map@^26.2.2: - version "26.2.2" - resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-26.2.2.tgz#6d4267b1903854bfdf6a871419f35a82f03ae71e" - integrity sha512-3sJlMSt+NHnzCB+0KhJ1Ut4zKJBiJOlbrqEYNdRQGlXTv8kqzZWjUKQRY3pkjmlf+7rYjAV++MQ4D6g4DhAyOg== +jest-haste-map@^26.3.0: + version "26.3.0" + resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-26.3.0.tgz#c51a3b40100d53ab777bfdad382d2e7a00e5c726" + integrity sha512-DHWBpTJgJhLLGwE5Z1ZaqLTYqeODQIZpby0zMBsCU9iRFHYyhklYqP4EiG73j5dkbaAdSZhgB938mL51Q5LeZA== dependencies: - "@jest/types" "^26.2.0" + "@jest/types" "^26.3.0" "@types/graceful-fs" "^4.1.2" "@types/node" "*" anymatch "^3.0.3" fb-watchman "^2.0.0" graceful-fs "^4.2.4" jest-regex-util "^26.0.0" - jest-serializer "^26.2.0" - jest-util "^26.2.0" - jest-worker "^26.2.1" + jest-serializer "^26.3.0" + jest-util "^26.3.0" + jest-worker "^26.3.0" micromatch "^4.0.2" sane "^4.0.3" walker "^1.0.7" optionalDependencies: fsevents "^2.1.2" -jest-jasmine2@^26.2.2: - version "26.2.2" - resolved "https://registry.yarnpkg.com/jest-jasmine2/-/jest-jasmine2-26.2.2.tgz#d82b1721fac2b153a4f8b3f0c95e81e702812de2" - integrity sha512-Q8AAHpbiZMVMy4Hz9j1j1bg2yUmPa1W9StBvcHqRaKa9PHaDUMwds8LwaDyzP/2fkybcTQE4+pTMDOG9826tEw== +jest-jasmine2@^26.4.0: + version "26.4.0" + resolved "https://registry.yarnpkg.com/jest-jasmine2/-/jest-jasmine2-26.4.0.tgz#f66b2237203df4227d3bdbb4b8a0de54ba877d35" + integrity sha512-cGBxwzDDKB09EPJ4pE69BMDv+2lO442IB1xQd+vL3cua2OKdeXQK6iDlQKoRX/iP0RgU5T8sn9yahLcx/+ox8Q== dependencies: "@babel/traverse" "^7.1.0" - "@jest/environment" "^26.2.0" - "@jest/source-map" "^26.1.0" - "@jest/test-result" "^26.2.0" - "@jest/types" "^26.2.0" + "@jest/environment" "^26.3.0" + "@jest/source-map" "^26.3.0" + "@jest/test-result" "^26.3.0" + "@jest/types" "^26.3.0" "@types/node" "*" chalk "^4.0.0" co "^4.6.0" - expect "^26.2.0" + expect "^26.4.0" is-generator-fn "^2.0.0" - jest-each "^26.2.0" - jest-matcher-utils "^26.2.0" - jest-message-util "^26.2.0" - jest-runtime "^26.2.2" - jest-snapshot "^26.2.2" - jest-util "^26.2.0" - pretty-format "^26.2.0" + jest-each "^26.4.0" + jest-matcher-utils "^26.4.0" + jest-message-util "^26.3.0" + jest-runtime "^26.4.0" + jest-snapshot "^26.4.0" + jest-util "^26.3.0" + pretty-format "^26.4.0" throat "^5.0.0" -jest-leak-detector@^26.2.0: - version "26.2.0" - resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-26.2.0.tgz#073ee6d8db7a9af043e7ce99d8eea17a4fb0cc50" - integrity sha512-aQdzTX1YiufkXA1teXZu5xXOJgy7wZQw6OJ0iH5CtQlOETe6gTSocaYKUNui1SzQ91xmqEUZ/WRavg9FD82rtQ== +jest-leak-detector@^26.4.0: + version "26.4.0" + resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-26.4.0.tgz#1efeeef693af3c9332062876add5ac5f25cb0a70" + integrity sha512-7EXKKEKnAWUPyiVtGZzJflbPOtYUdlNoevNVOkAcPpdR8xWiYKPGNGA6sz25S+8YhZq3rmkQJYAh3/P0VnoRwA== dependencies: - jest-get-type "^26.0.0" - pretty-format "^26.2.0" + jest-get-type "^26.3.0" + pretty-format "^26.4.0" -jest-matcher-utils@^26.2.0: - version "26.2.0" - resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-26.2.0.tgz#b107af98c2b8c557ffd46c1adf06f794aa52d622" - integrity sha512-2cf/LW2VFb3ayPHrH36ZDjp9+CAeAe/pWBAwsV8t3dKcrINzXPVxq8qMWOxwt5BaeBCx4ZupVGH7VIgB8v66vQ== +jest-matcher-utils@^26.4.0: + version "26.4.0" + resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-26.4.0.tgz#2bce9a939e008b894faf1bd4b5bb58facd00c252" + integrity sha512-u+xdCdq+F262DH+PutJKXLGr2H5P3DImdJCir51PGSfi3TtbLQ5tbzKaN8BkXbiTIU6ayuAYBWTlU1nyckVdzA== dependencies: chalk "^4.0.0" - jest-diff "^26.2.0" - jest-get-type "^26.0.0" - pretty-format "^26.2.0" + jest-diff "^26.4.0" + jest-get-type "^26.3.0" + pretty-format "^26.4.0" -jest-message-util@^26.2.0: - version "26.2.0" - resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-26.2.0.tgz#757fbc1323992297092bb9016a71a2eb12fd22ea" - integrity sha512-g362RhZaJuqeqG108n1sthz5vNpzTNy926eNDszo4ncRbmmcMRIUAZibnd6s5v2XSBCChAxQtCoN25gnzp7JbQ== +jest-message-util@^26.3.0: + version "26.3.0" + resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-26.3.0.tgz#3bdb538af27bb417f2d4d16557606fd082d5841a" + integrity sha512-xIavRYqr4/otGOiLxLZGj3ieMmjcNE73Ui+LdSW/Y790j5acqCsAdDiLIbzHCZMpN07JOENRWX5DcU+OQ+TjTA== dependencies: "@babel/code-frame" "^7.0.0" - "@jest/types" "^26.2.0" + "@jest/types" "^26.3.0" "@types/stack-utils" "^1.0.1" chalk "^4.0.0" graceful-fs "^4.2.4" @@ -5574,12 +5594,12 @@ jest-mock-warn@^1.1.0: resolved "https://registry.yarnpkg.com/jest-mock-warn/-/jest-mock-warn-1.1.0.tgz#cb1c8beaa6c6236da2be0f170fd5e6f595adb67b" integrity sha512-Q0EjGIUowgcuH7K1v6KgZ/WtqQaA9kc/TxayKaZKKeTGBn9nC4uKI65nt0O3l8opaPi2VSvG18WcLPEqzowxrQ== -jest-mock@^26.2.0: - version "26.2.0" - resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-26.2.0.tgz#a1b3303ab38c34aa1dbbc16ab57cdc1a59ed50d1" - integrity sha512-XeC7yWtWmWByoyVOHSsE7NYsbXJLtJNgmhD7z4MKumKm6ET0si81bsSLbQ64L5saK3TgsHo2B/UqG5KNZ1Sp/Q== +jest-mock@^26.3.0: + version "26.3.0" + resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-26.3.0.tgz#ee62207c3c5ebe5f35b760e1267fee19a1cfdeba" + integrity sha512-PeaRrg8Dc6mnS35gOo/CbZovoDPKAeB1FICZiuagAgGvbWdNNyjQjkOaGUa/3N3JtpQ/Mh9P4A2D4Fv51NnP8Q== dependencies: - "@jest/types" "^26.2.0" + "@jest/types" "^26.3.0" "@types/node" "*" jest-pnp-resolver@^1.2.2: @@ -5592,114 +5612,114 @@ jest-regex-util@^26.0.0: resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-26.0.0.tgz#d25e7184b36e39fd466c3bc41be0971e821fee28" integrity sha512-Gv3ZIs/nA48/Zvjrl34bf+oD76JHiGDUxNOVgUjh3j890sblXryjY4rss71fPtD/njchl6PSE2hIhvyWa1eT0A== -jest-resolve-dependencies@^26.2.2: - version "26.2.2" - resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-26.2.2.tgz#2ad3cd9281730e9a5c487cd846984c5324e47929" - integrity sha512-S5vufDmVbQXnpP7435gr710xeBGUFcKNpNswke7RmFvDQtmqPjPVU/rCeMlEU0p6vfpnjhwMYeaVjKZAy5QYJA== +jest-resolve-dependencies@^26.4.0: + version "26.4.0" + resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-26.4.0.tgz#c911fc991e1ae034dd8d01c192f23459d66b87b7" + integrity sha512-hznK/hlrlhu8hwdbieRdHFKmcV83GW8t30libt/v6j1L3IEzb8iN21SaWzV8KRAAK4ijiU0kuge0wnHn+0rytQ== dependencies: - "@jest/types" "^26.2.0" + "@jest/types" "^26.3.0" jest-regex-util "^26.0.0" - jest-snapshot "^26.2.2" + jest-snapshot "^26.4.0" -jest-resolve@^26.2.2: - version "26.2.2" - resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-26.2.2.tgz#324a20a516148d61bffa0058ed0c77c510ecfd3e" - integrity sha512-ye9Tj/ILn/0OgFPE/3dGpQPUqt4dHwIocxt5qSBkyzxQD8PbL0bVxBogX2FHxsd3zJA7V2H/cHXnBnNyyT9YoQ== +jest-resolve@^26.4.0: + version "26.4.0" + resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-26.4.0.tgz#6dc0af7fb93e65b73fec0368ca2b76f3eb59a6d7" + integrity sha512-bn/JoZTEXRSlEx3+SfgZcJAVuTMOksYq9xe9O6s4Ekg84aKBObEaVXKOEilULRqviSLAYJldnoWV9c07kwtiCg== dependencies: - "@jest/types" "^26.2.0" + "@jest/types" "^26.3.0" chalk "^4.0.0" graceful-fs "^4.2.4" jest-pnp-resolver "^1.2.2" - jest-util "^26.2.0" + jest-util "^26.3.0" read-pkg-up "^7.0.1" resolve "^1.17.0" slash "^3.0.0" -jest-runner@^26.2.2: - version "26.2.2" - resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-26.2.2.tgz#6d03d057886e9c782e10b2cf37443f902fe0e39e" - integrity sha512-/qb6ptgX+KQ+aNMohJf1We695kaAfuu3u3ouh66TWfhTpLd9WbqcF6163d/tMoEY8GqPztXPLuyG0rHRVDLxCA== +jest-runner@^26.4.0: + version "26.4.0" + resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-26.4.0.tgz#4cb91b266390fbf266294a7d8250d0e7bf8c7a9d" + integrity sha512-XF+tnUGolnPriu6Gg+HHWftspMjD5NkTV2mQppQnpZe39GcUangJ0al7aBGtA3GbVAcRd048DQiJPmsQRdugjw== dependencies: - "@jest/console" "^26.2.0" - "@jest/environment" "^26.2.0" - "@jest/test-result" "^26.2.0" - "@jest/types" "^26.2.0" + "@jest/console" "^26.3.0" + "@jest/environment" "^26.3.0" + "@jest/test-result" "^26.3.0" + "@jest/types" "^26.3.0" "@types/node" "*" chalk "^4.0.0" emittery "^0.7.1" exit "^0.1.2" graceful-fs "^4.2.4" - jest-config "^26.2.2" + jest-config "^26.4.0" jest-docblock "^26.0.0" - jest-haste-map "^26.2.2" - jest-leak-detector "^26.2.0" - jest-message-util "^26.2.0" - jest-resolve "^26.2.2" - jest-runtime "^26.2.2" - jest-util "^26.2.0" - jest-worker "^26.2.1" + jest-haste-map "^26.3.0" + jest-leak-detector "^26.4.0" + jest-message-util "^26.3.0" + jest-resolve "^26.4.0" + jest-runtime "^26.4.0" + jest-util "^26.3.0" + jest-worker "^26.3.0" source-map-support "^0.5.6" throat "^5.0.0" -jest-runtime@^26.2.2: - version "26.2.2" - resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-26.2.2.tgz#2480ff79320680a643031dd21998d7c63d83ab68" - integrity sha512-a8VXM3DxCDnCIdl9+QucWFfQ28KdqmyVFqeKLigHdErtsx56O2ZIdQkhFSuP1XtVrG9nTNHbKxjh5XL1UaFDVQ== - dependencies: - "@jest/console" "^26.2.0" - "@jest/environment" "^26.2.0" - "@jest/fake-timers" "^26.2.0" - "@jest/globals" "^26.2.0" - "@jest/source-map" "^26.1.0" - "@jest/test-result" "^26.2.0" - "@jest/transform" "^26.2.2" - "@jest/types" "^26.2.0" +jest-runtime@^26.4.0: + version "26.4.0" + resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-26.4.0.tgz#0b860f2bcf4f6047919c5b3fe74ed6adbe0056b4" + integrity sha512-1fjZgGpkyQBUTo59Vi19I4IcsBwzY6uwVFNjUmR06iIi3XRErkY28yimi4IUDRrofQErqcDEw2n3DF9WmQ6vEg== + dependencies: + "@jest/console" "^26.3.0" + "@jest/environment" "^26.3.0" + "@jest/fake-timers" "^26.3.0" + "@jest/globals" "^26.4.0" + "@jest/source-map" "^26.3.0" + "@jest/test-result" "^26.3.0" + "@jest/transform" "^26.3.0" + "@jest/types" "^26.3.0" "@types/yargs" "^15.0.0" chalk "^4.0.0" collect-v8-coverage "^1.0.0" exit "^0.1.2" glob "^7.1.3" graceful-fs "^4.2.4" - jest-config "^26.2.2" - jest-haste-map "^26.2.2" - jest-message-util "^26.2.0" - jest-mock "^26.2.0" + jest-config "^26.4.0" + jest-haste-map "^26.3.0" + jest-message-util "^26.3.0" + jest-mock "^26.3.0" jest-regex-util "^26.0.0" - jest-resolve "^26.2.2" - jest-snapshot "^26.2.2" - jest-util "^26.2.0" - jest-validate "^26.2.0" + jest-resolve "^26.4.0" + jest-snapshot "^26.4.0" + jest-util "^26.3.0" + jest-validate "^26.4.0" slash "^3.0.0" strip-bom "^4.0.0" yargs "^15.3.1" -jest-serializer@^26.2.0: - version "26.2.0" - resolved "https://registry.yarnpkg.com/jest-serializer/-/jest-serializer-26.2.0.tgz#92dcae5666322410f4bf50211dd749274959ddac" - integrity sha512-V7snZI9IVmyJEu0Qy0inmuXgnMWDtrsbV2p9CRAcmlmPVwpC2ZM8wXyYpiugDQnwLHx0V4+Pnog9Exb3UO8M6Q== +jest-serializer@^26.3.0: + version "26.3.0" + resolved "https://registry.yarnpkg.com/jest-serializer/-/jest-serializer-26.3.0.tgz#1c9d5e1b74d6e5f7e7f9627080fa205d976c33ef" + integrity sha512-IDRBQBLPlKa4flg77fqg0n/pH87tcRKwe8zxOVTWISxGpPHYkRZ1dXKyh04JOja7gppc60+soKVZ791mruVdow== dependencies: "@types/node" "*" graceful-fs "^4.2.4" -jest-snapshot@^26.2.2: - version "26.2.2" - resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-26.2.2.tgz#9d2eda083a4a1017b157e351868749bd63211799" - integrity sha512-NdjD8aJS7ePu268Wy/n/aR1TUisG0BOY+QOW4f6h46UHEKOgYmmkvJhh2BqdVZQ0BHSxTMt04WpCf9njzx8KtA== +jest-snapshot@^26.4.0: + version "26.4.0" + resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-26.4.0.tgz#efd42eef09bcb33e9a3eb98e229f2368c73c9235" + integrity sha512-vFGmNGWHMBomrlOpheTMoqihymovuH3GqfmaEIWoPpsxUXyxT3IlbxI5I4m2vg0uv3HUJYg5JoGrkgMzVsAwCg== dependencies: "@babel/types" "^7.0.0" - "@jest/types" "^26.2.0" + "@jest/types" "^26.3.0" "@types/prettier" "^2.0.0" chalk "^4.0.0" - expect "^26.2.0" + expect "^26.4.0" graceful-fs "^4.2.4" - jest-diff "^26.2.0" - jest-get-type "^26.0.0" - jest-haste-map "^26.2.2" - jest-matcher-utils "^26.2.0" - jest-message-util "^26.2.0" - jest-resolve "^26.2.2" + jest-diff "^26.4.0" + jest-get-type "^26.3.0" + jest-haste-map "^26.3.0" + jest-matcher-utils "^26.4.0" + jest-message-util "^26.3.0" + jest-resolve "^26.4.0" natural-compare "^1.4.0" - pretty-format "^26.2.0" + pretty-format "^26.4.0" semver "^7.3.2" jest-util@26.x: @@ -5713,41 +5733,41 @@ jest-util@26.x: is-ci "^2.0.0" micromatch "^4.0.2" -jest-util@^26.2.0: - version "26.2.0" - resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-26.2.0.tgz#0597d2a27c559340957609f106c408c17c1d88ac" - integrity sha512-YmDwJxLZ1kFxpxPfhSJ0rIkiZOM0PQbRcfH0TzJOhqCisCAsI1WcmoQqO83My9xeVA2k4n+rzg2UuexVKzPpig== +jest-util@^26.3.0: + version "26.3.0" + resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-26.3.0.tgz#a8974b191df30e2bf523ebbfdbaeb8efca535b3e" + integrity sha512-4zpn6bwV0+AMFN0IYhH/wnzIQzRaYVrz1A8sYnRnj4UXDXbOVtWmlaZkO9mipFqZ13okIfN87aDoJWB7VH6hcw== dependencies: - "@jest/types" "^26.2.0" + "@jest/types" "^26.3.0" "@types/node" "*" chalk "^4.0.0" graceful-fs "^4.2.4" is-ci "^2.0.0" micromatch "^4.0.2" -jest-validate@^26.2.0: - version "26.2.0" - resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-26.2.0.tgz#97fedf3e7984b7608854cbf925b9ca6ebcbdb78a" - integrity sha512-8XKn3hM6VIVmLNuyzYLCPsRCT83o8jMZYhbieh4dAyKLc4Ypr36rVKC+c8WMpWkfHHpGnEkvWUjjIAyobEIY/Q== +jest-validate@^26.4.0: + version "26.4.0" + resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-26.4.0.tgz#3874a7cc9e27328afac88899ee9e2fae5e3a4293" + integrity sha512-t56Z/FRMrLP6mpmje7/YgHy0wOzcuc6i3LBXz6kjmsUWYN62OuMdC86Vg9/dX59SvyitSqqegOrx+h7BkNXeaQ== dependencies: - "@jest/types" "^26.2.0" + "@jest/types" "^26.3.0" camelcase "^6.0.0" chalk "^4.0.0" - jest-get-type "^26.0.0" + jest-get-type "^26.3.0" leven "^3.1.0" - pretty-format "^26.2.0" + pretty-format "^26.4.0" -jest-watcher@^26.2.0: - version "26.2.0" - resolved "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-26.2.0.tgz#45bdf2fecadd19c0a501f3b071a474dca636825b" - integrity sha512-674Boco4Joe0CzgKPL6K4Z9LgyLx+ZvW2GilbpYb8rFEUkmDGgsZdv1Hv5rxsRpb1HLgKUOL/JfbttRCuFdZXQ== +jest-watcher@^26.3.0: + version "26.3.0" + resolved "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-26.3.0.tgz#f8ef3068ddb8af160ef868400318dc4a898eed08" + integrity sha512-XnLdKmyCGJ3VoF6G/p5ohbJ04q/vv5aH9ENI+i6BL0uu9WWB6Z7Z2lhQQk0d2AVZcRGp1yW+/TsoToMhBFPRdQ== dependencies: - "@jest/test-result" "^26.2.0" - "@jest/types" "^26.2.0" + "@jest/test-result" "^26.3.0" + "@jest/types" "^26.3.0" "@types/node" "*" ansi-escapes "^4.2.1" chalk "^4.0.0" - jest-util "^26.2.0" + jest-util "^26.3.0" string-length "^4.0.1" jest-worker@^26.0.0: @@ -5758,23 +5778,23 @@ jest-worker@^26.0.0: merge-stream "^2.0.0" supports-color "^7.0.0" -jest-worker@^26.2.1: - version "26.2.1" - resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-26.2.1.tgz#5d630ab93f666b53f911615bc13e662b382bd513" - integrity sha512-+XcGMMJDTeEGncRb5M5Zq9P7K4sQ1sirhjdOxsN1462h6lFo9w59bl2LVQmdGEEeU3m+maZCkS2Tcc9SfCHO4A== +jest-worker@^26.3.0: + version "26.3.0" + resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-26.3.0.tgz#7c8a97e4f4364b4f05ed8bca8ca0c24de091871f" + integrity sha512-Vmpn2F6IASefL+DVBhPzI2J9/GJUsqzomdeN+P+dK8/jKxbh8R3BtFnx3FIta7wYlPU62cpJMJQo4kuOowcMnw== dependencies: "@types/node" "*" merge-stream "^2.0.0" supports-color "^7.0.0" -jest@^26.2.2: - version "26.2.2" - resolved "https://registry.yarnpkg.com/jest/-/jest-26.2.2.tgz#a022303887b145147204c5f66e6a5c832333c7e7" - integrity sha512-EkJNyHiAG1+A8pqSz7cXttoVa34hOEzN/MrnJhYnfp5VHxflVcf2pu3oJSrhiy6LfIutLdWo+n6q63tjcoIeig== +jest@^26.4.0: + version "26.4.0" + resolved "https://registry.yarnpkg.com/jest/-/jest-26.4.0.tgz#495e81dcff40f8a656e567c664af87b29c5c5922" + integrity sha512-lNCOS+ckRHE1wFyVtQClBmbsOVuH2GWUTJMDL3vunp9DXcah+V8vfvVVApngClcdoc3rgZpqOfCNKLjxjj2l4g== dependencies: - "@jest/core" "^26.2.2" + "@jest/core" "^26.4.0" import-local "^3.0.2" - jest-cli "^26.2.2" + jest-cli "^26.4.0" jju@~1.4.0: version "1.4.0" @@ -7878,12 +7898,12 @@ pretty-format@^25.2.1, pretty-format@^25.5.0: ansi-styles "^4.0.0" react-is "^16.12.0" -pretty-format@^26.2.0: - version "26.2.0" - resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-26.2.0.tgz#83ecc8d7de676ff224225055e72bd64821cec4f1" - integrity sha512-qi/8IuBu2clY9G7qCXgCdD1Bf9w+sXakdHTRToknzMtVy0g7c4MBWaZy7MfB7ndKZovRO6XRwJiAYqq+MC7SDA== +pretty-format@^26.4.0: + version "26.4.0" + resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-26.4.0.tgz#c08073f531429e9e5024049446f42ecc9f933a3b" + integrity sha512-mEEwwpCseqrUtuMbrJG4b824877pM5xald3AkilJ47Po2YLr97/siejYQHqj2oDQBeJNbu+Q0qUuekJ8F0NAPg== dependencies: - "@jest/types" "^26.2.0" + "@jest/types" "^26.3.0" ansi-regex "^5.0.0" ansi-styles "^4.0.0" react-is "^16.12.0" @@ -9952,10 +9972,10 @@ v8-compile-cache@^2.1.1: resolved "https://registry.yarnpkg.com/v8-compile-cache/-/v8-compile-cache-2.1.1.tgz#54bc3cdd43317bca91e35dcaf305b1a7237de745" integrity sha512-8OQ9CL+VWyt3JStj7HX7/ciTL2V3Rl1Wf5OL+SNTm0yK1KvtReVulksyeRnCANHHuUxHlQig+JJDlUhBt1NQDQ== -v8-to-istanbul@^4.1.3: - version "4.1.4" - resolved "https://registry.yarnpkg.com/v8-to-istanbul/-/v8-to-istanbul-4.1.4.tgz#b97936f21c0e2d9996d4985e5c5156e9d4e49cd6" - integrity sha512-Rw6vJHj1mbdK8edjR7+zuJrpDtKIgNdAvTSAcpYfgMIw+u2dPDntD3dgN4XQFLU2/fvFQdzj+EeSGfd/jnY5fQ== +v8-to-istanbul@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/v8-to-istanbul/-/v8-to-istanbul-5.0.1.tgz#0608f5b49a481458625edb058488607f25498ba5" + integrity sha512-mbDNjuDajqYe3TXFk5qxcQy8L1msXNE37WTlLoqqpBfRsimbNcrlhQlDPntmECEcUvdC+AQ8CyMMf6EUx1r74Q== dependencies: "@types/istanbul-lib-coverage" "^2.0.1" convert-source-map "^1.6.0" From 62aa3006c1e3ac9d8a8c03bd1b08ad592a7d370e Mon Sep 17 00:00:00 2001 From: Eduardo San Martin Morote Date: Wed, 19 Aug 2020 15:19:52 +0200 Subject: [PATCH 0031/1422] release: v4.0.0-beta.7 --- CHANGELOG.md | 13 +++++++++++++ package.json | 2 +- 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 28cc168c1..114480194 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,16 @@ +# [4.0.0-beta.7](https://github.com/vuejs/vue-router-next/compare/v4.0.0-beta.6...v4.0.0-beta.7) (2020-08-19) + +### Bug Fixes + +- **encoding:** encode partial params ([eb04117](https://github.com/vuejs/vue-router-next/commit/eb041175c02ab0dac093823574a85bbbbf2056eb)) +- **matcher:** avoid trailing slash with optional params ([faf0aab](https://github.com/vuejs/vue-router-next/commit/faf0aab6451848e5b4330e1d01033137a0c42a5a)) +- **types:** append declare module ([50ad404](https://github.com/vuejs/vue-router-next/commit/50ad404ae45086f051b01ac552e4a3ab98535633)), closes [#419](https://github.com/vuejs/vue-router-next/issues/419) +- **vetur:** update tags/attributes definition ([#408](https://github.com/vuejs/vue-router-next/issues/408)) ([df8b2b1](https://github.com/vuejs/vue-router-next/commit/df8b2b140155d1e4ad5d00cd17d57ab2046a75e2)) + +### Features + +- **warn:** warn against infinite redirections ([e3dcc8d](https://github.com/vuejs/vue-router-next/commit/e3dcc8d9477e17f9b92e22787b750edc4658b77a)) + # [4.0.0-beta.6](https://github.com/vuejs/vue-router-next/compare/v4.0.0-beta.5...v4.0.0-beta.6) (2020-08-05) ### Bug Fixes diff --git a/package.json b/package.json index 7dbae5e35..a5e08bf6a 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "vue-router", - "version": "4.0.0-beta.6", + "version": "4.0.0-beta.7", "main": "dist/vue-router.cjs.js", "browser": "dist/vue-router.esm.js", "unpkg": "dist/vue-router.global.js", From 06f3f8fd7c3a32da331802fe5d3d19ced17200a3 Mon Sep 17 00:00:00 2001 From: Eduardo San Martin Morote Date: Sun, 23 Aug 2020 12:27:29 +0200 Subject: [PATCH 0032/1422] fix(types): add HTML attributes for JSX Close #435 --- src/RouterLink.ts | 3 ++- src/RouterView.ts | 3 ++- test-dts/components.test-d.tsx | 3 ++- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/src/RouterLink.ts b/src/RouterLink.ts index 03ba7170b..6fa1a59eb 100644 --- a/src/RouterLink.ts +++ b/src/RouterLink.ts @@ -7,6 +7,7 @@ import { reactive, unref, VNodeProps, + HTMLAttributes, } from 'vue' import { RouteLocationRaw, VueUseOptions, RouteLocation } from './types' import { isSameRouteLocationParams, isSameRouteRecord } from './location' @@ -186,7 +187,7 @@ export const RouterLinkImpl = defineComponent({ // also to avoid inline import() in generated d.ts files export const RouterLink = (RouterLinkImpl as any) as { new (): { - $props: VNodeProps & RouterLinkProps + $props: HTMLAttributes & VNodeProps & RouterLinkProps } } diff --git a/src/RouterView.ts b/src/RouterView.ts index 39afae54d..0a50a4cfa 100644 --- a/src/RouterView.ts +++ b/src/RouterView.ts @@ -9,6 +9,7 @@ import { VNodeProps, getCurrentInstance, computed, + HTMLAttributes, } from 'vue' import { RouteLocationNormalized, RouteLocationNormalizedLoaded } from './types' import { @@ -108,7 +109,7 @@ export const RouterViewImpl = defineComponent({ // also to avoid inline import() in generated d.ts files export const RouterView = (RouterViewImpl as any) as { new (): { - $props: VNodeProps & RouterViewProps + $props: HTMLAttributes & VNodeProps & RouterViewProps } } diff --git a/test-dts/components.test-d.tsx b/test-dts/components.test-d.tsx index 97d39aebb..6b970012f 100644 --- a/test-dts/components.test-d.tsx +++ b/test-dts/components.test-d.tsx @@ -21,10 +21,11 @@ expectError() expectError() expectType() expectType() +expectType() expectType() expectType() // RouterView -expectType() +expectType() expectType() expectType() From d047a0b155b8086691d0abb184ff30eac4e1a3b6 Mon Sep 17 00:00:00 2001 From: Eduardo San Martin Morote Date: Sun, 23 Aug 2020 13:01:32 +0200 Subject: [PATCH 0033/1422] refactor(types): jsx attrs types --- src/RouterLink.ts | 8 ++++++-- src/RouterView.ts | 8 ++++++-- 2 files changed, 12 insertions(+), 4 deletions(-) diff --git a/src/RouterLink.ts b/src/RouterLink.ts index 6fa1a59eb..68b777862 100644 --- a/src/RouterLink.ts +++ b/src/RouterLink.ts @@ -7,7 +7,8 @@ import { reactive, unref, VNodeProps, - HTMLAttributes, + AllowedComponentProps, + ComponentCustomProps, } from 'vue' import { RouteLocationRaw, VueUseOptions, RouteLocation } from './types' import { isSameRouteLocationParams, isSameRouteRecord } from './location' @@ -187,7 +188,10 @@ export const RouterLinkImpl = defineComponent({ // also to avoid inline import() in generated d.ts files export const RouterLink = (RouterLinkImpl as any) as { new (): { - $props: HTMLAttributes & VNodeProps & RouterLinkProps + $props: AllowedComponentProps & + ComponentCustomProps & + VNodeProps & + RouterLinkProps } } diff --git a/src/RouterView.ts b/src/RouterView.ts index 0a50a4cfa..f68cc658e 100644 --- a/src/RouterView.ts +++ b/src/RouterView.ts @@ -9,7 +9,8 @@ import { VNodeProps, getCurrentInstance, computed, - HTMLAttributes, + AllowedComponentProps, + ComponentCustomProps, } from 'vue' import { RouteLocationNormalized, RouteLocationNormalizedLoaded } from './types' import { @@ -109,7 +110,10 @@ export const RouterViewImpl = defineComponent({ // also to avoid inline import() in generated d.ts files export const RouterView = (RouterViewImpl as any) as { new (): { - $props: HTMLAttributes & VNodeProps & RouterViewProps + $props: AllowedComponentProps & + ComponentCustomProps & + VNodeProps & + RouterViewProps } } From 61f8c69b385c7a17b83d700e3090688d98bcc070 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Mon, 24 Aug 2020 07:13:27 +0000 Subject: [PATCH 0034/1422] build(deps-dev): bump @microsoft/api-documenter from 7.8.27 to 7.8.33 Bumps [@microsoft/api-documenter](https://github.com/microsoft/rushstack) from 7.8.27 to 7.8.33. - [Release notes](https://github.com/microsoft/rushstack/releases) - [Commits](https://github.com/microsoft/rushstack/compare/@microsoft/api-documenter_v7.8.27...@microsoft/api-documenter_v7.8.33) Signed-off-by: dependabot-preview[bot] --- package.json | 2 +- yarn.lock | 49 ++++++++++++++++++++++++++++--------------------- 2 files changed, 29 insertions(+), 22 deletions(-) diff --git a/package.json b/package.json index a5e08bf6a..2c90e1a86 100644 --- a/package.json +++ b/package.json @@ -65,7 +65,7 @@ "attributes": "vetur/attributes.json" }, "devDependencies": { - "@microsoft/api-documenter": "^7.8.27", + "@microsoft/api-documenter": "^7.8.33", "@microsoft/api-extractor": "^7.8.1", "@rollup/plugin-alias": "^3.1.1", "@rollup/plugin-commonjs": "^14.0.0", diff --git a/yarn.lock b/yarn.lock index 5019c859e..13ba8b72f 100644 --- a/yarn.lock +++ b/yarn.lock @@ -495,15 +495,15 @@ "@types/yargs" "^15.0.0" chalk "^4.0.0" -"@microsoft/api-documenter@^7.8.27": - version "7.8.27" - resolved "https://registry.yarnpkg.com/@microsoft/api-documenter/-/api-documenter-7.8.27.tgz#aa18e975013171085b379dab01fad4b6ad0ccb69" - integrity sha512-fELVHf3qgnTm3doAkfiO5AN/5gUgBvhMw97dEG4OdHL/5kL2rnaowU8iHJnZgPyTfOoEX8dmzHKVT5uQp8JDmw== +"@microsoft/api-documenter@^7.8.33": + version "7.8.33" + resolved "https://registry.yarnpkg.com/@microsoft/api-documenter/-/api-documenter-7.8.33.tgz#515c9c81dc4787992c4221424b96fccdd6e1e927" + integrity sha512-LW6I5LDz1V9dOUadaDTUtKj2UMynxTgvc4M6Cc/7UckkTDPjZeX/2MtqOpzPY++rtcvSQ0kWuAbsM9Kaez5BpA== dependencies: - "@microsoft/api-extractor-model" "7.8.15" + "@microsoft/api-extractor-model" "7.8.17" "@microsoft/tsdoc" "0.12.19" - "@rushstack/node-core-library" "3.27.0" - "@rushstack/ts-command-line" "4.4.8" + "@rushstack/node-core-library" "3.29.0" + "@rushstack/ts-command-line" "4.6.2" colors "~1.2.1" js-yaml "~3.13.1" resolve "~1.17.0" @@ -516,13 +516,13 @@ "@microsoft/tsdoc" "0.12.19" "@rushstack/node-core-library" "3.19.7" -"@microsoft/api-extractor-model@7.8.15": - version "7.8.15" - resolved "https://registry.yarnpkg.com/@microsoft/api-extractor-model/-/api-extractor-model-7.8.15.tgz#a9ade86180157aead2e63e5edb439c4d8f158049" - integrity sha512-z81RLrvZdCxPMDBH6JVtZAMMrxDsDGz4mW7GM6OGxPlooTtSVtPH9RNhZFbA6zp7/4ANgBlqURl8zIsxvFeppA== +"@microsoft/api-extractor-model@7.8.17": + version "7.8.17" + resolved "https://registry.yarnpkg.com/@microsoft/api-extractor-model/-/api-extractor-model-7.8.17.tgz#a0286ee8ae22ee69bc8dca763e65feae39155eb5" + integrity sha512-iyVdA1WTlwgddDJwJTedTFcpGjDoV9grq/JGP7rK2t4yo4kOE5XhLbi+BlZ3t5vuggFJf8LawDyomEb8tGtwRQ== dependencies: "@microsoft/tsdoc" "0.12.19" - "@rushstack/node-core-library" "3.27.0" + "@rushstack/node-core-library" "3.29.0" "@microsoft/api-extractor@^7.8.1": version "7.8.1" @@ -628,14 +628,15 @@ timsort "~0.3.0" z-schema "~3.18.3" -"@rushstack/node-core-library@3.27.0": - version "3.27.0" - resolved "https://registry.yarnpkg.com/@rushstack/node-core-library/-/node-core-library-3.27.0.tgz#474446d29dcb5166946af2cd9ec86d58e1444b58" - integrity sha512-6fS7wqcxL4XGVFkhECMCqsqXouPRDWKMgNpyrmXJRS0PPumRMW+9m2knVK/kgTrMwcnbGysqxX/77PiFErw8wg== +"@rushstack/node-core-library@3.29.0": + version "3.29.0" + resolved "https://registry.yarnpkg.com/@rushstack/node-core-library/-/node-core-library-3.29.0.tgz#07202a2b807afd6ff556a376de176e6b27696897" + integrity sha512-8mEfn7mUqqzANnOvi4/xTc0tJ6coQs3qywlOl86jiqZUaB4sRLo0MtzUQz0VtyRfan2fFuxKzIleJGtNTAwYQQ== dependencies: "@types/node" "10.17.13" colors "~1.2.1" fs-extra "~7.0.1" + import-lazy "~4.0.0" jju "~1.4.0" semver "~7.3.0" timsort "~0.3.0" @@ -650,14 +651,15 @@ argparse "~1.0.9" colors "~1.2.1" -"@rushstack/ts-command-line@4.4.8": - version "4.4.8" - resolved "https://registry.yarnpkg.com/@rushstack/ts-command-line/-/ts-command-line-4.4.8.tgz#46559932c7e9a70ea071c3ce376a2e7ad0d2e9b1" - integrity sha512-giyVXuyI2BAID0BINp8TbxcTf5MEao+UPadAMfCuuS64mSE1E76S8wzhjqEy3WaTSpgyRDi7dMlEegNnD/97Gw== +"@rushstack/ts-command-line@4.6.2": + version "4.6.2" + resolved "https://registry.yarnpkg.com/@rushstack/ts-command-line/-/ts-command-line-4.6.2.tgz#2981a44ac6a6911cec53be7841697f03a47292ac" + integrity sha512-wMjCrgiVYO5L1VkRKWv6EmisxduWuthOP4OghUPkl1kbbw9z2yZzQd9uk9rIqmGwOg8hjFX+0HrZCCXGHtABIQ== dependencies: "@types/argparse" "1.0.38" argparse "~1.0.9" colors "~1.2.1" + string-argv "~0.3.1" "@sinonjs/commons@^1.7.0": version "1.7.2" @@ -4844,6 +4846,11 @@ import-fresh@^3.1.0, import-fresh@^3.2.1: parent-module "^1.0.0" resolve-from "^4.0.0" +import-lazy@~4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/import-lazy/-/import-lazy-4.0.0.tgz#e8eb627483a0a43da3c03f3e35548be5cb0cc153" + integrity sha512-rKtvo6a868b5Hu3heneU+L4yEQ4jYKLtjpnPeUdK7h0yzXGmyBTypknlkCvHFBqfX9YlorEiMM6Dnq/5atfHkw== + import-local@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/import-local/-/import-local-2.0.0.tgz#55070be38a5993cf18ef6db7e961f5bee5c5a09d" @@ -9161,7 +9168,7 @@ stream-shift@^1.0.0: resolved "https://registry.yarnpkg.com/stream-shift/-/stream-shift-1.0.1.tgz#d7088281559ab2778424279b0877da3c392d5a3d" integrity sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ== -string-argv@0.3.1: +string-argv@0.3.1, string-argv@~0.3.1: version "0.3.1" resolved "https://registry.yarnpkg.com/string-argv/-/string-argv-0.3.1.tgz#95e2fbec0427ae19184935f816d74aaa4c5c19da" integrity sha512-a1uQGz7IyVy9YwhqjZIZu1c8JO8dNIe20xBmSS6qu9kv++k3JGzCVmprbNN5Kn+BgzD5E7YYwg1CcjuJMRNsvg== From 6c5c78e4e8c2787e8fa18634140bace1b3d045df Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Mon, 24 Aug 2020 07:13:52 +0000 Subject: [PATCH 0035/1422] build(deps-dev): bump ts-jest from 26.1.4 to 26.2.0 Bumps [ts-jest](https://github.com/kulshekhar/ts-jest) from 26.1.4 to 26.2.0. - [Release notes](https://github.com/kulshekhar/ts-jest/releases) - [Changelog](https://github.com/kulshekhar/ts-jest/blob/master/CHANGELOG.md) - [Commits](https://github.com/kulshekhar/ts-jest/compare/v26.1.4...v26.2.0) Signed-off-by: dependabot-preview[bot] --- package.json | 2 +- yarn.lock | 34 +++++++--------------------------- 2 files changed, 8 insertions(+), 28 deletions(-) diff --git a/package.json b/package.json index 2c90e1a86..c5515eef3 100644 --- a/package.json +++ b/package.json @@ -101,7 +101,7 @@ "serve-handler": "^6.1.3", "size-limit": "^4.5.6", "style-loader": "^1.2.1", - "ts-jest": "^26.1.4", + "ts-jest": "^26.2.0", "ts-loader": "^8.0.2", "ts-node": "^8.10.2", "typescript": "^3.9.7", diff --git a/yarn.lock b/yarn.lock index 13ba8b72f..4bb342471 100644 --- a/yarn.lock +++ b/yarn.lock @@ -474,16 +474,6 @@ "@types/yargs" "^15.0.0" chalk "^3.0.0" -"@jest/types@^26.1.0": - version "26.1.0" - resolved "https://registry.yarnpkg.com/@jest/types/-/types-26.1.0.tgz#f8afaaaeeb23b5cad49dd1f7779689941dcb6057" - integrity sha512-GXigDDsp6ZlNMhXQDeuy/iYCDsRIHJabWtDzvnn36+aqFfG14JmFV0e/iXxY4SP9vbXSiPNOWdehU5MeqrYHBQ== - dependencies: - "@types/istanbul-lib-coverage" "^2.0.0" - "@types/istanbul-reports" "^1.1.1" - "@types/yargs" "^15.0.0" - chalk "^4.0.0" - "@jest/types@^26.3.0": version "26.3.0" resolved "https://registry.yarnpkg.com/@jest/types/-/types-26.3.0.tgz#97627bf4bdb72c55346eef98e3b3f7ddc4941f71" @@ -834,7 +824,7 @@ dependencies: "@types/istanbul-lib-report" "*" -"@types/jest@^26.0.10": +"@types/jest@26.x", "@types/jest@^26.0.10": version "26.0.10" resolved "https://registry.yarnpkg.com/@types/jest/-/jest-26.0.10.tgz#8faf7e9756c033c39014ae76a7329efea00ea607" integrity sha512-i2m0oyh8w/Lum7wWK/YOZJakYF8Mx08UaKA1CtbmFeDquVhAEdA7znacsVSf2hJ1OQ/OfVMGN90pw/AtzF8s/Q== @@ -5729,18 +5719,7 @@ jest-snapshot@^26.4.0: pretty-format "^26.4.0" semver "^7.3.2" -jest-util@26.x: - version "26.1.0" - resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-26.1.0.tgz#80e85d4ba820decacf41a691c2042d5276e5d8d8" - integrity sha512-rNMOwFQevljfNGvbzNQAxdmXQ+NawW/J72dmddsK0E8vgxXCMtwQ/EH0BiWEIxh0hhMcTsxwAxINt7Lh46Uzbg== - dependencies: - "@jest/types" "^26.1.0" - chalk "^4.0.0" - graceful-fs "^4.2.4" - is-ci "^2.0.0" - micromatch "^4.0.2" - -jest-util@^26.3.0: +jest-util@26.x, jest-util@^26.3.0: version "26.3.0" resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-26.3.0.tgz#a8974b191df30e2bf523ebbfdbaeb8efca535b3e" integrity sha512-4zpn6bwV0+AMFN0IYhH/wnzIQzRaYVrz1A8sYnRnj4UXDXbOVtWmlaZkO9mipFqZ13okIfN87aDoJWB7VH6hcw== @@ -9673,11 +9652,12 @@ tryer@^1.0.1: resolved "https://registry.yarnpkg.com/tryer/-/tryer-1.0.1.tgz#f2c85406800b9b0f74c9f7465b81eaad241252f8" integrity sha512-c3zayb8/kWWpycWYg87P71E1S1ZL6b6IJxfb5fvsUgsf0S2MVGaDhDXXjDMpdCpfWXqptc+4mXwmiy1ypXqRAA== -ts-jest@^26.1.4: - version "26.1.4" - resolved "https://registry.yarnpkg.com/ts-jest/-/ts-jest-26.1.4.tgz#87d41a96016a8efe4b8cc14501d3785459af6fa6" - integrity sha512-Nd7diUX6NZWfWq6FYyvcIPR/c7GbEF75fH1R6coOp3fbNzbRJBZZAn0ueVS0r8r9ral1VcrpneAFAwB3TsVS1Q== +ts-jest@^26.2.0: + version "26.2.0" + resolved "https://registry.yarnpkg.com/ts-jest/-/ts-jest-26.2.0.tgz#7ec22faceb05ee1467fdb5265d1b33c27441f163" + integrity sha512-9+y2qwzXdAImgLSYLXAb/Rhq9+K4rbt0417b8ai987V60g2uoNWBBmMkYgutI7D8Zhu+IbCSHbBtrHxB9d7xyA== dependencies: + "@types/jest" "26.x" bs-logger "0.x" buffer-from "1.x" fast-json-stable-stringify "2.x" From f3dfb35a76bdfb6e02df32a54c64b58d139d3da2 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Mon, 24 Aug 2020 07:20:04 +0000 Subject: [PATCH 0036/1422] build(deps-dev): bump rollup from 2.26.3 to 2.26.5 Bumps [rollup](https://github.com/rollup/rollup) from 2.26.3 to 2.26.5. - [Release notes](https://github.com/rollup/rollup/releases) - [Changelog](https://github.com/rollup/rollup/blob/master/CHANGELOG.md) - [Commits](https://github.com/rollup/rollup/compare/v2.26.3...v2.26.5) Signed-off-by: dependabot-preview[bot] --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index c5515eef3..ee8840c74 100644 --- a/package.json +++ b/package.json @@ -94,7 +94,7 @@ "nightwatch": "^1.3.7", "nightwatch-helpers": "^1.2.0", "prettier": "^2.0.5", - "rollup": "^2.26.3", + "rollup": "^2.26.5", "rollup-plugin-terser": "^6.1.0", "rollup-plugin-typescript2": "^0.27.2", "selenium-server": "^3.141.59", diff --git a/yarn.lock b/yarn.lock index 4bb342471..567139308 100644 --- a/yarn.lock +++ b/yarn.lock @@ -8505,10 +8505,10 @@ rollup-plugin-typescript2@^0.27.2: resolve "1.17.0" tslib "2.0.1" -rollup@^2.26.3: - version "2.26.3" - resolved "https://registry.yarnpkg.com/rollup/-/rollup-2.26.3.tgz#502c755872a4590937cfa4e8f7eb99d3bc3c4025" - integrity sha512-Mlt39/kL2rA9egcbQbaZV1SNVplGqYYhDDMcGgHPPE0tvM3R4GrB+IEdYy2QtTrdzMQx57ZcqDFf/KWWm8F+uw== +rollup@^2.26.5: + version "2.26.5" + resolved "https://registry.yarnpkg.com/rollup/-/rollup-2.26.5.tgz#5562ec36fcba3eed65cfd630bd78e037ad0e0307" + integrity sha512-rCyFG3ZtQdnn9YwfuAVH0l/Om34BdO5lwCA0W6Hq+bNB21dVEBbCRxhaHOmu1G7OBFDWytbzAC104u7rxHwGjA== optionalDependencies: fsevents "~2.1.2" From 01c0a225910de64aea12382f0022158fd5e82b26 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Mon, 24 Aug 2020 07:21:10 +0000 Subject: [PATCH 0037/1422] build(deps-dev): bump size-limit and @size-limit/preset-small-lib Bumps [size-limit](https://github.com/ai/size-limit) and [@size-limit/preset-small-lib](https://github.com/ai/size-limit). These dependencies needed to be updated together. Updates `size-limit` from 4.5.6 to 4.5.7 - [Release notes](https://github.com/ai/size-limit/releases) - [Changelog](https://github.com/ai/size-limit/blob/master/CHANGELOG.md) - [Commits](https://github.com/ai/size-limit/compare/4.5.6...4.5.7) Updates `@size-limit/preset-small-lib` from 4.5.6 to 4.5.7 - [Release notes](https://github.com/ai/size-limit/releases) - [Changelog](https://github.com/ai/size-limit/blob/master/CHANGELOG.md) - [Commits](https://github.com/ai/size-limit/compare/4.5.6...4.5.7) Signed-off-by: dependabot-preview[bot] --- package.json | 4 ++-- yarn.lock | 36 ++++++++++++++++++------------------ 2 files changed, 20 insertions(+), 20 deletions(-) diff --git a/package.json b/package.json index ee8840c74..d448aec5d 100644 --- a/package.json +++ b/package.json @@ -71,7 +71,7 @@ "@rollup/plugin-commonjs": "^14.0.0", "@rollup/plugin-node-resolve": "^8.4.0", "@rollup/plugin-replace": "^2.3.3", - "@size-limit/preset-small-lib": "^4.5.6", + "@size-limit/preset-small-lib": "^4.5.7", "@types/jest": "^26.0.10", "@types/jsdom": "^16.2.3", "@types/webpack": "^4.41.21", @@ -99,7 +99,7 @@ "rollup-plugin-typescript2": "^0.27.2", "selenium-server": "^3.141.59", "serve-handler": "^6.1.3", - "size-limit": "^4.5.6", + "size-limit": "^4.5.7", "style-loader": "^1.2.1", "ts-jest": "^26.2.0", "ts-loader": "^8.0.2", diff --git a/yarn.lock b/yarn.lock index 567139308..0abc390bf 100644 --- a/yarn.lock +++ b/yarn.lock @@ -665,25 +665,25 @@ dependencies: "@sinonjs/commons" "^1.7.0" -"@size-limit/file@4.5.6": - version "4.5.6" - resolved "https://registry.yarnpkg.com/@size-limit/file/-/file-4.5.6.tgz#6d4c620df37f7cbd58b361302ff2cd4e5f269dd1" - integrity sha512-6USNLtFRwNXrrvWDTJ5vhF7cDTuDm9YD+8prDEmid504ShYO7ZYptJEhTKsilgsXYtBNQ4lpVWQsKUYu/1JBzw== +"@size-limit/file@4.5.7": + version "4.5.7" + resolved "https://registry.yarnpkg.com/@size-limit/file/-/file-4.5.7.tgz#29ce728aa83e3d7ee48421a32894cdf4954405ca" + integrity sha512-OCbJsYMELJORRSX386rPWUKoXvF4XNBFZob3amDl/2y1ox7DKdh1hinAWYndJdpZaFRI6rHoR+AXQ9dvWe9Ofg== dependencies: semver "7.3.2" -"@size-limit/preset-small-lib@^4.5.6": - version "4.5.6" - resolved "https://registry.yarnpkg.com/@size-limit/preset-small-lib/-/preset-small-lib-4.5.6.tgz#7ccc4cca795ecadf1ab49f466724587b02e1b29a" - integrity sha512-J5lAL7g+06LuLMy80pB8VQPVLZsMNeWMPOjtlcfX61Xe1nyE6AzQkXcYYyt3mAwR7PWF8GHIiQFFi4MHQ58QyQ== +"@size-limit/preset-small-lib@^4.5.7": + version "4.5.7" + resolved "https://registry.yarnpkg.com/@size-limit/preset-small-lib/-/preset-small-lib-4.5.7.tgz#db903c7a446eaa932e92d502c3b4e7a18ca3a335" + integrity sha512-8aRxacxXLeCzvGmAA62F0baRcaKlwDmxR/cofCQFGCtVBC3f9O2Tlk1/K5qu9bqTcCI1nnCA3WFVkQae4irACA== dependencies: - "@size-limit/file" "4.5.6" - "@size-limit/webpack" "4.5.6" + "@size-limit/file" "4.5.7" + "@size-limit/webpack" "4.5.7" -"@size-limit/webpack@4.5.6": - version "4.5.6" - resolved "https://registry.yarnpkg.com/@size-limit/webpack/-/webpack-4.5.6.tgz#ed496700919a41ad70e1901cf9c711d08cfccd3e" - integrity sha512-6cphzivIpOcCrZy2he+e6eYNAyB6g2jTWDjTuj9nned77tyBdkbOCzTG8gRRdo2/TDVdHHRdkPaPeJx4ZROJ8g== +"@size-limit/webpack@4.5.7": + version "4.5.7" + resolved "https://registry.yarnpkg.com/@size-limit/webpack/-/webpack-4.5.7.tgz#3b1210a486ff1c2b31e6adaa7c8f1e56711b17ba" + integrity sha512-S7dg4YR26y431+jWw0TPm6PEuWP5Lh8GFlfmY7smOaZFHvXfpSYhtK/d699/RgxegBDV7UCSj19ZE9RgE3a/Pg== dependencies: css-loader "^4.2.1" escape-string-regexp "^4.0.0" @@ -8809,10 +8809,10 @@ sisteransi@^1.0.4: resolved "https://registry.yarnpkg.com/sisteransi/-/sisteransi-1.0.5.tgz#134d681297756437cc05ca01370d3a7a571075ed" integrity sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg== -size-limit@^4.5.6: - version "4.5.6" - resolved "https://registry.yarnpkg.com/size-limit/-/size-limit-4.5.6.tgz#3eab946c865a09bb2ee7acfec3a6ceb55f23658b" - integrity sha512-xqtAa6ibB+tmGW6Slc+ip/+QeqCrZBGHQ7W4e605YUuQANqNc91aiSiZR8UKP0UYLE3//ggZHH62bGONml7gDA== +size-limit@^4.5.7: + version "4.5.7" + resolved "https://registry.yarnpkg.com/size-limit/-/size-limit-4.5.7.tgz#0bfb8b3bddad0c38388bd0bd3d98bbd7d5b7daee" + integrity sha512-ANvwaaTvMPGyvsoYnzw7AUUA1Xcj0kC4Pu/Mvvii0RS78TVE7mLL/F0kyVXOw0ytdcq0HoPnT2OaXhwxLlvsyA== dependencies: bytes "^3.1.0" chokidar "^3.4.2" From 9afce4044555d0b903e69b7db9c35df1828803bf Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Mon, 24 Aug 2020 07:34:48 +0000 Subject: [PATCH 0038/1422] build(deps-dev): bump jest from 26.4.0 to 26.4.2 Bumps [jest](https://github.com/facebook/jest) from 26.4.0 to 26.4.2. - [Release notes](https://github.com/facebook/jest/releases) - [Changelog](https://github.com/facebook/jest/blob/master/CHANGELOG.md) - [Commits](https://github.com/facebook/jest/compare/v26.4.0...v26.4.2) Signed-off-by: dependabot-preview[bot] --- package.json | 2 +- yarn.lock | 268 +++++++++++++++++++++++++-------------------------- 2 files changed, 135 insertions(+), 135 deletions(-) diff --git a/package.json b/package.json index d448aec5d..65f958eb6 100644 --- a/package.json +++ b/package.json @@ -88,7 +88,7 @@ "dotenv": "^8.2.0", "faked-promise": "^2.2.2", "html-webpack-plugin": "^4.3.0", - "jest": "^26.4.0", + "jest": "^26.4.2", "jest-mock-warn": "^1.1.0", "lint-staged": "^10.2.11", "nightwatch": "^1.3.7", diff --git a/yarn.lock b/yarn.lock index 0abc390bf..615434941 100644 --- a/yarn.lock +++ b/yarn.lock @@ -316,13 +316,13 @@ jest-util "^26.3.0" slash "^3.0.0" -"@jest/core@^26.4.0": - version "26.4.0" - resolved "https://registry.yarnpkg.com/@jest/core/-/core-26.4.0.tgz#8f42ae45640b46b4f8ffee134dcd408c210ab1ef" - integrity sha512-mpXm4OjWQbz7qbzGIiSqvfNZ1FxX6ywWgLtdSD2luPORt5zKPtqcdDnX7L8RdfMaj1znDBgN2+gB094ZIr7vnA== +"@jest/core@^26.4.2": + version "26.4.2" + resolved "https://registry.yarnpkg.com/@jest/core/-/core-26.4.2.tgz#85d0894f31ac29b5bab07aa86806d03dd3d33edc" + integrity sha512-sDva7YkeNprxJfepOctzS8cAk9TOekldh+5FhVuXS40+94SHbiicRO1VV2tSoRtgIo+POs/Cdyf8p76vPTd6dg== dependencies: "@jest/console" "^26.3.0" - "@jest/reporters" "^26.4.0" + "@jest/reporters" "^26.4.1" "@jest/test-result" "^26.3.0" "@jest/transform" "^26.3.0" "@jest/types" "^26.3.0" @@ -332,17 +332,17 @@ exit "^0.1.2" graceful-fs "^4.2.4" jest-changed-files "^26.3.0" - jest-config "^26.4.0" + jest-config "^26.4.2" jest-haste-map "^26.3.0" jest-message-util "^26.3.0" jest-regex-util "^26.0.0" jest-resolve "^26.4.0" - jest-resolve-dependencies "^26.4.0" - jest-runner "^26.4.0" - jest-runtime "^26.4.0" - jest-snapshot "^26.4.0" + jest-resolve-dependencies "^26.4.2" + jest-runner "^26.4.2" + jest-runtime "^26.4.2" + jest-snapshot "^26.4.2" jest-util "^26.3.0" - jest-validate "^26.4.0" + jest-validate "^26.4.2" jest-watcher "^26.3.0" micromatch "^4.0.2" p-each-series "^2.1.0" @@ -372,19 +372,19 @@ jest-mock "^26.3.0" jest-util "^26.3.0" -"@jest/globals@^26.4.0": - version "26.4.0" - resolved "https://registry.yarnpkg.com/@jest/globals/-/globals-26.4.0.tgz#ebab3ba937a200a4b3805f2e552bdf869465ffea" - integrity sha512-QKwoVAeL9d0xaEM9ebPvfc+bolN04F+o3zM2jswGDBiiNjCogZ3LvOaqumRdDyz6kLmbx+UhgMBAVuLunbXZ2A== +"@jest/globals@^26.4.2": + version "26.4.2" + resolved "https://registry.yarnpkg.com/@jest/globals/-/globals-26.4.2.tgz#73c2a862ac691d998889a241beb3dc9cada40d4a" + integrity sha512-Ot5ouAlehhHLRhc+sDz2/9bmNv9p5ZWZ9LE1pXGGTCXBasmi5jnYjlgYcYt03FBwLmZXCZ7GrL29c33/XRQiow== dependencies: "@jest/environment" "^26.3.0" "@jest/types" "^26.3.0" - expect "^26.4.0" + expect "^26.4.2" -"@jest/reporters@^26.4.0": - version "26.4.0" - resolved "https://registry.yarnpkg.com/@jest/reporters/-/reporters-26.4.0.tgz#dd3f03979170dd25dc6a9b746c693b591056d753" - integrity sha512-14OPAAuYhgRBSNxAocVluX6ksdMdK/EuP9NmtBXU9g1uKaVBrPnohn/CVm6iMot1a9iU8BCxa5715YRf8FEg/A== +"@jest/reporters@^26.4.1": + version "26.4.1" + resolved "https://registry.yarnpkg.com/@jest/reporters/-/reporters-26.4.1.tgz#3b4d6faf28650f3965f8b97bc3d114077fb71795" + integrity sha512-aROTkCLU8++yiRGVxLsuDmZsQEKO6LprlrxtAuzvtpbIFl3eIjgIf3EUxDKgomkS25R9ZzwGEdB5weCcBZlrpQ== dependencies: "@bcoe/v8-coverage" "^0.2.3" "@jest/console" "^26.3.0" @@ -411,7 +411,7 @@ terminal-link "^2.0.0" v8-to-istanbul "^5.0.1" optionalDependencies: - node-notifier "^7.0.0" + node-notifier "^8.0.0" "@jest/source-map@^26.3.0": version "26.3.0" @@ -432,16 +432,16 @@ "@types/istanbul-lib-coverage" "^2.0.0" collect-v8-coverage "^1.0.0" -"@jest/test-sequencer@^26.4.0": - version "26.4.0" - resolved "https://registry.yarnpkg.com/@jest/test-sequencer/-/test-sequencer-26.4.0.tgz#f4902772392d478d310dd6fd3b6818fb4bcc4c82" - integrity sha512-9Z7lCShS7vERp+DRwIVNH/6sHMWwJK1DPnGCpGeVLGJJWJ4Y08sQI3vIKdmKHu2KmwlUBpRM+BFf7NlVUkl5XA== +"@jest/test-sequencer@^26.4.2": + version "26.4.2" + resolved "https://registry.yarnpkg.com/@jest/test-sequencer/-/test-sequencer-26.4.2.tgz#58a3760a61eec758a2ce6080201424580d97cbba" + integrity sha512-83DRD8N3M0tOhz9h0bn6Kl6dSp+US6DazuVF8J9m21WAp5x7CqSMaNycMP0aemC/SH/pDQQddbsfHRTBXVUgog== dependencies: "@jest/test-result" "^26.3.0" graceful-fs "^4.2.4" jest-haste-map "^26.3.0" - jest-runner "^26.4.0" - jest-runtime "^26.4.0" + jest-runner "^26.4.2" + jest-runtime "^26.4.2" "@jest/transform@^26.3.0": version "26.3.0" @@ -3743,15 +3743,15 @@ expand-tilde@^2.0.0, expand-tilde@^2.0.2: dependencies: homedir-polyfill "^1.0.1" -expect@^26.4.0: - version "26.4.0" - resolved "https://registry.yarnpkg.com/expect/-/expect-26.4.0.tgz#34a0aae523343b0931ff1cf0aa972dfe40edfab4" - integrity sha512-dbYDJhFcqQsamlos6nEwAMe+ahdckJBk5fmw1DYGLQGabGSlUuT+Fm2jHYw5119zG3uIhP+lCQbjJhFEdZMJtg== +expect@^26.4.2: + version "26.4.2" + resolved "https://registry.yarnpkg.com/expect/-/expect-26.4.2.tgz#36db120928a5a2d7d9736643032de32f24e1b2a1" + integrity sha512-IlJ3X52Z0lDHm7gjEp+m76uX46ldH5VpqmU0006vqDju/285twh7zaWMRhs67VpQhBwjjMchk+p5aA0VkERCAA== dependencies: "@jest/types" "^26.3.0" ansi-styles "^4.0.0" jest-get-type "^26.3.0" - jest-matcher-utils "^26.4.0" + jest-matcher-utils "^26.4.2" jest-message-util "^26.3.0" jest-regex-util "^26.0.0" @@ -5295,7 +5295,7 @@ is-wsl@^1.1.0: resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-1.1.0.tgz#1f16e4aa22b04d1336b66188a66af3c600c3a66d" integrity sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0= -is-wsl@^2.1.1: +is-wsl@^2.2.0: version "2.2.0" resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-2.2.0.tgz#74a4c76e77ca9fd3f932f290c17ea326cd157271" integrity sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww== @@ -5393,12 +5393,12 @@ jest-changed-files@^26.3.0: execa "^4.0.0" throat "^5.0.0" -jest-cli@^26.4.0: - version "26.4.0" - resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-26.4.0.tgz#9cbd6be818cd818d85bafe2cffa1dbf043602b28" - integrity sha512-kw2Pr3V2x9/WzSDGsbz/MJBNlCoPMxMudrIavft4bqRlv5tASjU51tyO+1Os1LdW2dAnLQZYsxFUZ8oWPyssGQ== +jest-cli@^26.4.2: + version "26.4.2" + resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-26.4.2.tgz#24afc6e4dfc25cde4c7ec4226fb7db5f157c21da" + integrity sha512-zb+lGd/SfrPvoRSC/0LWdaWCnscXc1mGYW//NP4/tmBvRPT3VntZ2jtKUONsRi59zc5JqmsSajA9ewJKFYp8Cw== dependencies: - "@jest/core" "^26.4.0" + "@jest/core" "^26.4.2" "@jest/test-result" "^26.3.0" "@jest/types" "^26.3.0" chalk "^4.0.0" @@ -5406,19 +5406,19 @@ jest-cli@^26.4.0: graceful-fs "^4.2.4" import-local "^3.0.2" is-ci "^2.0.0" - jest-config "^26.4.0" + jest-config "^26.4.2" jest-util "^26.3.0" - jest-validate "^26.4.0" + jest-validate "^26.4.2" prompts "^2.0.1" yargs "^15.3.1" -jest-config@^26.4.0: - version "26.4.0" - resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-26.4.0.tgz#72ff3d0418b7ee7fdd9e2bcaef4dec10b38b3b02" - integrity sha512-MxsvrBug8YY+C4QcUBtmgnHyFeW7w3Ouk/w9eplCDN8VJGVyBEZFe8Lxzfp2pSqh0Dqurqv8Oik2YkbekGUlxg== +jest-config@^26.4.2: + version "26.4.2" + resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-26.4.2.tgz#da0cbb7dc2c131ffe831f0f7f2a36256e6086558" + integrity sha512-QBf7YGLuToiM8PmTnJEdRxyYy3mHWLh24LJZKVdXZ2PNdizSe1B/E8bVm+HYcjbEzGuVXDv/di+EzdO/6Gq80A== dependencies: "@babel/core" "^7.1.0" - "@jest/test-sequencer" "^26.4.0" + "@jest/test-sequencer" "^26.4.2" "@jest/types" "^26.3.0" babel-jest "^26.3.0" chalk "^4.0.0" @@ -5428,13 +5428,13 @@ jest-config@^26.4.0: jest-environment-jsdom "^26.3.0" jest-environment-node "^26.3.0" jest-get-type "^26.3.0" - jest-jasmine2 "^26.4.0" + jest-jasmine2 "^26.4.2" jest-regex-util "^26.0.0" jest-resolve "^26.4.0" jest-util "^26.3.0" - jest-validate "^26.4.0" + jest-validate "^26.4.2" micromatch "^4.0.2" - pretty-format "^26.4.0" + pretty-format "^26.4.2" jest-diff@^25.2.1: version "25.5.0" @@ -5446,15 +5446,15 @@ jest-diff@^25.2.1: jest-get-type "^25.2.6" pretty-format "^25.5.0" -jest-diff@^26.4.0: - version "26.4.0" - resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-26.4.0.tgz#d073a0a11952b5bd9f1ff39bb9ad24304a0c55f7" - integrity sha512-wwC38HlOW+iTq6j5tkj/ZamHn6/nrdcEOc/fKaVILNtN2NLWGdkfRaHWwfNYr5ehaLvuoG2LfCZIcWByVj0gjg== +jest-diff@^26.4.2: + version "26.4.2" + resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-26.4.2.tgz#a1b7b303bcc534aabdb3bd4a7caf594ac059f5aa" + integrity sha512-6T1XQY8U28WH0Z5rGpQ+VqZSZz8EN8rZcBtfvXaOkbwxIEeRre6qnuZQlbY1AJ4MKDxQF8EkrCvK+hL/VkyYLQ== dependencies: chalk "^4.0.0" diff-sequences "^26.3.0" jest-get-type "^26.3.0" - pretty-format "^26.4.0" + pretty-format "^26.4.2" jest-docblock@^26.0.0: version "26.0.0" @@ -5463,16 +5463,16 @@ jest-docblock@^26.0.0: dependencies: detect-newline "^3.0.0" -jest-each@^26.4.0: - version "26.4.0" - resolved "https://registry.yarnpkg.com/jest-each/-/jest-each-26.4.0.tgz#c53605b20e7a0a58d6dcf4d8b2f309e607d35d5a" - integrity sha512-+cyBh1ehs6thVT/bsZVG+WwmRn2ix4Q4noS9yLZgM10yGWPW12/TDvwuOV2VZXn1gi09/ZwJKJWql6YW1C9zNw== +jest-each@^26.4.2: + version "26.4.2" + resolved "https://registry.yarnpkg.com/jest-each/-/jest-each-26.4.2.tgz#bb14f7f4304f2bb2e2b81f783f989449b8b6ffae" + integrity sha512-p15rt8r8cUcRY0Mvo1fpkOGYm7iI8S6ySxgIdfh3oOIv+gHwrHTy5VWCGOecWUhDsit4Nz8avJWdT07WLpbwDA== dependencies: "@jest/types" "^26.3.0" chalk "^4.0.0" jest-get-type "^26.3.0" jest-util "^26.3.0" - pretty-format "^26.4.0" + pretty-format "^26.4.2" jest-environment-jsdom@^26.3.0: version "26.3.0" @@ -5530,10 +5530,10 @@ jest-haste-map@^26.3.0: optionalDependencies: fsevents "^2.1.2" -jest-jasmine2@^26.4.0: - version "26.4.0" - resolved "https://registry.yarnpkg.com/jest-jasmine2/-/jest-jasmine2-26.4.0.tgz#f66b2237203df4227d3bdbb4b8a0de54ba877d35" - integrity sha512-cGBxwzDDKB09EPJ4pE69BMDv+2lO442IB1xQd+vL3cua2OKdeXQK6iDlQKoRX/iP0RgU5T8sn9yahLcx/+ox8Q== +jest-jasmine2@^26.4.2: + version "26.4.2" + resolved "https://registry.yarnpkg.com/jest-jasmine2/-/jest-jasmine2-26.4.2.tgz#18a9d5bec30904267ac5e9797570932aec1e2257" + integrity sha512-z7H4EpCldHN1J8fNgsja58QftxBSL+JcwZmaXIvV9WKIM+x49F4GLHu/+BQh2kzRKHAgaN/E82od+8rTOBPyPA== dependencies: "@babel/traverse" "^7.1.0" "@jest/environment" "^26.3.0" @@ -5543,34 +5543,34 @@ jest-jasmine2@^26.4.0: "@types/node" "*" chalk "^4.0.0" co "^4.6.0" - expect "^26.4.0" + expect "^26.4.2" is-generator-fn "^2.0.0" - jest-each "^26.4.0" - jest-matcher-utils "^26.4.0" + jest-each "^26.4.2" + jest-matcher-utils "^26.4.2" jest-message-util "^26.3.0" - jest-runtime "^26.4.0" - jest-snapshot "^26.4.0" + jest-runtime "^26.4.2" + jest-snapshot "^26.4.2" jest-util "^26.3.0" - pretty-format "^26.4.0" + pretty-format "^26.4.2" throat "^5.0.0" -jest-leak-detector@^26.4.0: - version "26.4.0" - resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-26.4.0.tgz#1efeeef693af3c9332062876add5ac5f25cb0a70" - integrity sha512-7EXKKEKnAWUPyiVtGZzJflbPOtYUdlNoevNVOkAcPpdR8xWiYKPGNGA6sz25S+8YhZq3rmkQJYAh3/P0VnoRwA== +jest-leak-detector@^26.4.2: + version "26.4.2" + resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-26.4.2.tgz#c73e2fa8757bf905f6f66fb9e0070b70fa0f573f" + integrity sha512-akzGcxwxtE+9ZJZRW+M2o+nTNnmQZxrHJxX/HjgDaU5+PLmY1qnQPnMjgADPGCRPhB+Yawe1iij0REe+k/aHoA== dependencies: jest-get-type "^26.3.0" - pretty-format "^26.4.0" + pretty-format "^26.4.2" -jest-matcher-utils@^26.4.0: - version "26.4.0" - resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-26.4.0.tgz#2bce9a939e008b894faf1bd4b5bb58facd00c252" - integrity sha512-u+xdCdq+F262DH+PutJKXLGr2H5P3DImdJCir51PGSfi3TtbLQ5tbzKaN8BkXbiTIU6ayuAYBWTlU1nyckVdzA== +jest-matcher-utils@^26.4.2: + version "26.4.2" + resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-26.4.2.tgz#fa81f3693f7cb67e5fc1537317525ef3b85f4b06" + integrity sha512-KcbNqWfWUG24R7tu9WcAOKKdiXiXCbMvQYT6iodZ9k1f7065k0keUOW6XpJMMvah+hTfqkhJhRXmA3r3zMAg0Q== dependencies: chalk "^4.0.0" - jest-diff "^26.4.0" + jest-diff "^26.4.2" jest-get-type "^26.3.0" - pretty-format "^26.4.0" + pretty-format "^26.4.2" jest-message-util@^26.3.0: version "26.3.0" @@ -5609,14 +5609,14 @@ jest-regex-util@^26.0.0: resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-26.0.0.tgz#d25e7184b36e39fd466c3bc41be0971e821fee28" integrity sha512-Gv3ZIs/nA48/Zvjrl34bf+oD76JHiGDUxNOVgUjh3j890sblXryjY4rss71fPtD/njchl6PSE2hIhvyWa1eT0A== -jest-resolve-dependencies@^26.4.0: - version "26.4.0" - resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-26.4.0.tgz#c911fc991e1ae034dd8d01c192f23459d66b87b7" - integrity sha512-hznK/hlrlhu8hwdbieRdHFKmcV83GW8t30libt/v6j1L3IEzb8iN21SaWzV8KRAAK4ijiU0kuge0wnHn+0rytQ== +jest-resolve-dependencies@^26.4.2: + version "26.4.2" + resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-26.4.2.tgz#739bdb027c14befb2fe5aabbd03f7bab355f1dc5" + integrity sha512-ADHaOwqEcVc71uTfySzSowA/RdxUpCxhxa2FNLiin9vWLB1uLPad3we+JSSROq5+SrL9iYPdZZF8bdKM7XABTQ== dependencies: "@jest/types" "^26.3.0" jest-regex-util "^26.0.0" - jest-snapshot "^26.4.0" + jest-snapshot "^26.4.2" jest-resolve@^26.4.0: version "26.4.0" @@ -5632,10 +5632,10 @@ jest-resolve@^26.4.0: resolve "^1.17.0" slash "^3.0.0" -jest-runner@^26.4.0: - version "26.4.0" - resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-26.4.0.tgz#4cb91b266390fbf266294a7d8250d0e7bf8c7a9d" - integrity sha512-XF+tnUGolnPriu6Gg+HHWftspMjD5NkTV2mQppQnpZe39GcUangJ0al7aBGtA3GbVAcRd048DQiJPmsQRdugjw== +jest-runner@^26.4.2: + version "26.4.2" + resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-26.4.2.tgz#c3ec5482c8edd31973bd3935df5a449a45b5b853" + integrity sha512-FgjDHeVknDjw1gRAYaoUoShe1K3XUuFMkIaXbdhEys+1O4bEJS8Avmn4lBwoMfL8O5oFTdWYKcf3tEJyyYyk8g== dependencies: "@jest/console" "^26.3.0" "@jest/environment" "^26.3.0" @@ -5646,27 +5646,27 @@ jest-runner@^26.4.0: emittery "^0.7.1" exit "^0.1.2" graceful-fs "^4.2.4" - jest-config "^26.4.0" + jest-config "^26.4.2" jest-docblock "^26.0.0" jest-haste-map "^26.3.0" - jest-leak-detector "^26.4.0" + jest-leak-detector "^26.4.2" jest-message-util "^26.3.0" jest-resolve "^26.4.0" - jest-runtime "^26.4.0" + jest-runtime "^26.4.2" jest-util "^26.3.0" jest-worker "^26.3.0" source-map-support "^0.5.6" throat "^5.0.0" -jest-runtime@^26.4.0: - version "26.4.0" - resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-26.4.0.tgz#0b860f2bcf4f6047919c5b3fe74ed6adbe0056b4" - integrity sha512-1fjZgGpkyQBUTo59Vi19I4IcsBwzY6uwVFNjUmR06iIi3XRErkY28yimi4IUDRrofQErqcDEw2n3DF9WmQ6vEg== +jest-runtime@^26.4.2: + version "26.4.2" + resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-26.4.2.tgz#94ce17890353c92e4206580c73a8f0c024c33c42" + integrity sha512-4Pe7Uk5a80FnbHwSOk7ojNCJvz3Ks2CNQWT5Z7MJo4tX0jb3V/LThKvD9tKPNVNyeMH98J/nzGlcwc00R2dSHQ== dependencies: "@jest/console" "^26.3.0" "@jest/environment" "^26.3.0" "@jest/fake-timers" "^26.3.0" - "@jest/globals" "^26.4.0" + "@jest/globals" "^26.4.2" "@jest/source-map" "^26.3.0" "@jest/test-result" "^26.3.0" "@jest/transform" "^26.3.0" @@ -5677,15 +5677,15 @@ jest-runtime@^26.4.0: exit "^0.1.2" glob "^7.1.3" graceful-fs "^4.2.4" - jest-config "^26.4.0" + jest-config "^26.4.2" jest-haste-map "^26.3.0" jest-message-util "^26.3.0" jest-mock "^26.3.0" jest-regex-util "^26.0.0" jest-resolve "^26.4.0" - jest-snapshot "^26.4.0" + jest-snapshot "^26.4.2" jest-util "^26.3.0" - jest-validate "^26.4.0" + jest-validate "^26.4.2" slash "^3.0.0" strip-bom "^4.0.0" yargs "^15.3.1" @@ -5698,25 +5698,25 @@ jest-serializer@^26.3.0: "@types/node" "*" graceful-fs "^4.2.4" -jest-snapshot@^26.4.0: - version "26.4.0" - resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-26.4.0.tgz#efd42eef09bcb33e9a3eb98e229f2368c73c9235" - integrity sha512-vFGmNGWHMBomrlOpheTMoqihymovuH3GqfmaEIWoPpsxUXyxT3IlbxI5I4m2vg0uv3HUJYg5JoGrkgMzVsAwCg== +jest-snapshot@^26.4.2: + version "26.4.2" + resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-26.4.2.tgz#87d3ac2f2bd87ea8003602fbebd8fcb9e94104f6" + integrity sha512-N6Uub8FccKlf5SBFnL2Ri/xofbaA68Cc3MGjP/NuwgnsvWh+9hLIR/DhrxbSiKXMY9vUW5dI6EW1eHaDHqe9sg== dependencies: "@babel/types" "^7.0.0" "@jest/types" "^26.3.0" "@types/prettier" "^2.0.0" chalk "^4.0.0" - expect "^26.4.0" + expect "^26.4.2" graceful-fs "^4.2.4" - jest-diff "^26.4.0" + jest-diff "^26.4.2" jest-get-type "^26.3.0" jest-haste-map "^26.3.0" - jest-matcher-utils "^26.4.0" + jest-matcher-utils "^26.4.2" jest-message-util "^26.3.0" jest-resolve "^26.4.0" natural-compare "^1.4.0" - pretty-format "^26.4.0" + pretty-format "^26.4.2" semver "^7.3.2" jest-util@26.x, jest-util@^26.3.0: @@ -5731,17 +5731,17 @@ jest-util@26.x, jest-util@^26.3.0: is-ci "^2.0.0" micromatch "^4.0.2" -jest-validate@^26.4.0: - version "26.4.0" - resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-26.4.0.tgz#3874a7cc9e27328afac88899ee9e2fae5e3a4293" - integrity sha512-t56Z/FRMrLP6mpmje7/YgHy0wOzcuc6i3LBXz6kjmsUWYN62OuMdC86Vg9/dX59SvyitSqqegOrx+h7BkNXeaQ== +jest-validate@^26.4.2: + version "26.4.2" + resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-26.4.2.tgz#e871b0dfe97747133014dcf6445ee8018398f39c" + integrity sha512-blft+xDX7XXghfhY0mrsBCYhX365n8K5wNDC4XAcNKqqjEzsRUSXP44m6PL0QJEW2crxQFLLztVnJ4j7oPlQrQ== dependencies: "@jest/types" "^26.3.0" camelcase "^6.0.0" chalk "^4.0.0" jest-get-type "^26.3.0" leven "^3.1.0" - pretty-format "^26.4.0" + pretty-format "^26.4.2" jest-watcher@^26.3.0: version "26.3.0" @@ -5773,14 +5773,14 @@ jest-worker@^26.3.0: merge-stream "^2.0.0" supports-color "^7.0.0" -jest@^26.4.0: - version "26.4.0" - resolved "https://registry.yarnpkg.com/jest/-/jest-26.4.0.tgz#495e81dcff40f8a656e567c664af87b29c5c5922" - integrity sha512-lNCOS+ckRHE1wFyVtQClBmbsOVuH2GWUTJMDL3vunp9DXcah+V8vfvVVApngClcdoc3rgZpqOfCNKLjxjj2l4g== +jest@^26.4.2: + version "26.4.2" + resolved "https://registry.yarnpkg.com/jest/-/jest-26.4.2.tgz#7e8bfb348ec33f5459adeaffc1a25d5752d9d312" + integrity sha512-LLCjPrUh98Ik8CzW8LLVnSCfLaiY+wbK53U7VxnFSX7Q+kWC4noVeDvGWIFw0Amfq1lq2VfGm7YHWSLBV62MJw== dependencies: - "@jest/core" "^26.4.0" + "@jest/core" "^26.4.2" import-local "^3.0.2" - jest-cli "^26.4.0" + jest-cli "^26.4.2" jju@~1.4.0: version "1.4.0" @@ -6858,16 +6858,16 @@ node-modules-regexp@^1.0.0: resolved "https://registry.yarnpkg.com/node-modules-regexp/-/node-modules-regexp-1.0.0.tgz#8d9dbe28964a4ac5712e9131642107c71e90ec40" integrity sha1-jZ2+KJZKSsVxLpExZCEHxx6Q7EA= -node-notifier@^7.0.0: - version "7.0.1" - resolved "https://registry.yarnpkg.com/node-notifier/-/node-notifier-7.0.1.tgz#a355e33e6bebacef9bf8562689aed0f4230ca6f9" - integrity sha512-VkzhierE7DBmQEElhTGJIoiZa1oqRijOtgOlsXg32KrJRXsPy0NXFBqWGW/wTswnJlDCs5viRYaqWguqzsKcmg== +node-notifier@^8.0.0: + version "8.0.0" + resolved "https://registry.yarnpkg.com/node-notifier/-/node-notifier-8.0.0.tgz#a7eee2d51da6d0f7ff5094bc7108c911240c1620" + integrity sha512-46z7DUmcjoYdaWyXouuFNNfUo6eFa94t23c53c+lG/9Cvauk4a98rAUp9672X5dxGdQmLpPzTxzu8f/OeEPaFA== dependencies: growly "^1.3.0" - is-wsl "^2.1.1" - semver "^7.2.1" + is-wsl "^2.2.0" + semver "^7.3.2" shellwords "^0.1.1" - uuid "^7.0.3" + uuid "^8.3.0" which "^2.0.2" node-releases@^1.1.53: @@ -7884,10 +7884,10 @@ pretty-format@^25.2.1, pretty-format@^25.5.0: ansi-styles "^4.0.0" react-is "^16.12.0" -pretty-format@^26.4.0: - version "26.4.0" - resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-26.4.0.tgz#c08073f531429e9e5024049446f42ecc9f933a3b" - integrity sha512-mEEwwpCseqrUtuMbrJG4b824877pM5xald3AkilJ47Po2YLr97/siejYQHqj2oDQBeJNbu+Q0qUuekJ8F0NAPg== +pretty-format@^26.4.2: + version "26.4.2" + resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-26.4.2.tgz#d081d032b398e801e2012af2df1214ef75a81237" + integrity sha512-zK6Gd8zDsEiVydOCGLkoBoZuqv8VTiHyAbKznXe/gaph/DAeZOmit9yMfgIz5adIgAMMs5XfoYSwAX3jcCO1tA== dependencies: "@jest/types" "^26.3.0" ansi-regex "^5.0.0" @@ -8635,7 +8635,7 @@ semver-compare@^1.0.0: resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== -semver@7.3.2, semver@7.x, semver@^7.2.1, semver@^7.3.2, semver@~7.3.0: +semver@7.3.2, semver@7.x, semver@^7.3.2, semver@~7.3.0: version "7.3.2" resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.2.tgz#604962b052b81ed0786aae84389ffba70ffd3938" integrity sha512-OrOb32TeeambH6UrhtShmF7CRDqhL6/5XpPNp2DuRH6+9QLw/orhp72j87v8Qa1ScDkvrrBNpZcDejAirJmfXQ== @@ -9949,10 +9949,10 @@ uuid@^3.3.2, uuid@^3.4.0: resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.4.0.tgz#b23e4358afa8a202fe7a100af1f5f883f02007ee" integrity sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A== -uuid@^7.0.3: - version "7.0.3" - resolved "https://registry.yarnpkg.com/uuid/-/uuid-7.0.3.tgz#c5c9f2c8cf25dc0a372c4df1441c41f5bd0c680b" - integrity sha512-DPSke0pXhTZgoF/d+WSt2QaKMCFSfx7QegxEWT+JOuHF5aWrKEn0G+ztjuJg/gG8/ItK+rbPCD/yNv8yyih6Cg== +uuid@^8.3.0: + version "8.3.0" + resolved "https://registry.yarnpkg.com/uuid/-/uuid-8.3.0.tgz#ab738085ca22dc9a8c92725e459b1d507df5d6ea" + integrity sha512-fX6Z5o4m6XsXBdli9g7DtWgAx+osMsRRZFKma1mIUsLCz6vRvv+pz5VNbyu9UEDzpMWulZfvpgb/cmDXVulYFQ== v8-compile-cache@^2.1.1: version "2.1.1" From 71c28cf4d62101fa67f8e1efe972eeb66ca1a5c2 Mon Sep 17 00:00:00 2001 From: Eduardo San Martin Morote Date: Mon, 24 Aug 2020 15:05:10 +0200 Subject: [PATCH 0039/1422] refactor: replace spread with assign --- src/router.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/router.ts b/src/router.ts index 9850dd8ea..31d702476 100644 --- a/src/router.ts +++ b/src/router.ts @@ -243,7 +243,7 @@ export function createRouter(options: RouterOptions): Router { ): RouteLocation & { href: string } { // const objectLocation = routerLocationAsObject(rawLocation) // we create a copy to modify it later - currentLocation = { ...(currentLocation || currentRoute.value) } + currentLocation = assign({}, currentLocation || currentRoute.value) if (typeof rawLocation === 'string') { let locationNormalized = parseURL( parseQuery, From f7ccde04348cabc8753fab98a5a925c86ddda18f Mon Sep 17 00:00:00 2001 From: Eduardo San Martin Morote Date: Mon, 24 Aug 2020 15:21:34 +0200 Subject: [PATCH 0040/1422] refactor: avoid double filtering of arrays for guards --- src/router.ts | 23 +++++++++-------------- 1 file changed, 9 insertions(+), 14 deletions(-) diff --git a/src/router.ts b/src/router.ts index 31d702476..4ab4496a2 100644 --- a/src/router.ts +++ b/src/router.ts @@ -566,20 +566,20 @@ export function createRouter(options: RouterOptions): Router { ): Promise { let guards: Lazy[] + const [ + leavingRecords, + updatingRecords, + enteringRecords, + ] = extractChangingRecords(to, from) + // all components here have been resolved once because we are leaving guards = extractComponentsGuards( - from.matched.filter(record => to.matched.indexOf(record) < 0).reverse(), + leavingRecords.reverse(), 'beforeRouteLeave', to, from ) - const [ - leavingRecords, - updatingRecords, - // enteringRecords, - ] = extractChangingRecords(to, from) - for (const record of leavingRecords) { for (const guard of record.leaveGuards) { guards.push(guardToPromiseFn(guard, to, from)) @@ -610,9 +610,7 @@ export function createRouter(options: RouterOptions): Router { .then(() => { // check in components beforeRouteUpdate guards = extractComponentsGuards( - to.matched.filter( - record => from.matched.indexOf(record as any) > -1 - ), + updatingRecords, 'beforeRouteUpdate', to, from @@ -655,10 +653,7 @@ export function createRouter(options: RouterOptions): Router { // check in-component beforeRouteEnter guards = extractComponentsGuards( - // the type doesn't matter as we are comparing an object per reference - to.matched.filter( - record => from.matched.indexOf(record as any) < 0 - ), + enteringRecords, 'beforeRouteEnter', to, from From be7353d4093d134beb11017c5f888602d2c32b1c Mon Sep 17 00:00:00 2001 From: Eduardo San Martin Morote Date: Mon, 24 Aug 2020 15:26:09 +0200 Subject: [PATCH 0041/1422] chore: add comment [skip ci] --- src/router.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/src/router.ts b/src/router.ts index 4ab4496a2..b724217c3 100644 --- a/src/router.ts +++ b/src/router.ts @@ -580,6 +580,7 @@ export function createRouter(options: RouterOptions): Router { from ) + // leavingRecords is already reversed for (const record of leavingRecords) { for (const guard of record.leaveGuards) { guards.push(guardToPromiseFn(guard, to, from)) From cf1fda3e4f260fca76e3a85c9d3e6ff20bc53a61 Mon Sep 17 00:00:00 2001 From: Eduardo San Martin Morote Date: Mon, 24 Aug 2020 16:29:03 +0200 Subject: [PATCH 0042/1422] refactor: fix older edge dev builds Co-authored-by: BenoitRanque --- src/warning.ts | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/src/warning.ts b/src/warning.ts index 58ad55494..b42f52003 100644 --- a/src/warning.ts +++ b/src/warning.ts @@ -1,3 +1,9 @@ -export function warn(msg: string, ...args: any[]) { - console.warn('[Vue Router warn]: ' + msg, ...args) +export function warn(msg: string, ..._args: any[]): void +export function warn(msg: string): void { + // avoid using ...args as it breaks in older Edge builds + const args = Array.from(arguments).slice(1) + console.warn.apply( + console, + ['[Vue Router warn]: ' + msg].concat(args) as [string, ...any[]] + ) } From 2e277ef51679f9c5f94388af1f37ecf9d2f24579 Mon Sep 17 00:00:00 2001 From: Eduardo San Martin Morote Date: Tue, 25 Aug 2020 21:23:51 +0200 Subject: [PATCH 0043/1422] docs: add docs with vitepress --- docs/.vitepress/config.js | 144 +++ docs/.vitepress/public/bit-wide.png | Bin 0 -> 28340 bytes docs/.vitepress/style.styl | 47 + docs/guide/advanced/data-fetching.md | 115 +++ docs/guide/advanced/lazy-loading.md | 57 ++ docs/guide/advanced/meta.md | 56 ++ docs/guide/advanced/navigation-failures.md | 91 ++ docs/guide/advanced/navigation-guards.md | 195 ++++ docs/guide/advanced/scroll-behavior.md | 107 +++ docs/guide/advanced/transitions.md | 60 ++ docs/guide/essentials/dynamic-matching.md | 88 ++ docs/guide/essentials/history-mode.md | 163 ++++ docs/guide/essentials/named-routes.md | 36 + docs/guide/essentials/named-views.md | 89 ++ docs/guide/essentials/navigation.md | 101 +++ docs/guide/essentials/nested-routes.md | 97 ++ docs/guide/essentials/passing-props.md | 76 ++ docs/guide/essentials/redirect-and-alias.md | 105 +++ docs/guide/index.md | 117 +++ docs/index.md | 18 + docs/installation.md | 29 + package.json | 3 + yarn.lock | 928 +++++++++++++++++++- 23 files changed, 2696 insertions(+), 26 deletions(-) create mode 100644 docs/.vitepress/config.js create mode 100644 docs/.vitepress/public/bit-wide.png create mode 100644 docs/.vitepress/style.styl create mode 100644 docs/guide/advanced/data-fetching.md create mode 100644 docs/guide/advanced/lazy-loading.md create mode 100644 docs/guide/advanced/meta.md create mode 100644 docs/guide/advanced/navigation-failures.md create mode 100644 docs/guide/advanced/navigation-guards.md create mode 100644 docs/guide/advanced/scroll-behavior.md create mode 100644 docs/guide/advanced/transitions.md create mode 100644 docs/guide/essentials/dynamic-matching.md create mode 100644 docs/guide/essentials/history-mode.md create mode 100644 docs/guide/essentials/named-routes.md create mode 100644 docs/guide/essentials/named-views.md create mode 100644 docs/guide/essentials/navigation.md create mode 100644 docs/guide/essentials/nested-routes.md create mode 100644 docs/guide/essentials/passing-props.md create mode 100644 docs/guide/essentials/redirect-and-alias.md create mode 100644 docs/guide/index.md create mode 100644 docs/index.md create mode 100644 docs/installation.md diff --git a/docs/.vitepress/config.js b/docs/.vitepress/config.js new file mode 100644 index 000000000..3f900b4e2 --- /dev/null +++ b/docs/.vitepress/config.js @@ -0,0 +1,144 @@ +/** @type {import('vitepress').UserConfig} */ +const config = { + locales: { + '/': { + lang: 'en-US', + title: 'Vue Router', + description: 'The official router for Vue.js.', + }, + '/es/': { + lang: 'es-ES', + title: 'Vue Router', + description: 'El router oficial par Vue.js', + }, + }, + // serviceWorker: true, + themeConfig: { + // algolia: { + // apiKey: 'f854bb46d3de7eeb921a3b9173bd0d4c', + // indexName: 'vue-router-next', + // }, + + repo: 'vuejs/vue-router-next', + docsRepo: 'vuejs/vue-router-next', + docsDir: 'docs', + docsBranch: 'master', + editLinks: true, + + locales: { + // English + '/': { + nav: [ + { + text: 'Guide', + link: '/guide/', + }, + { + text: 'API Reference', + link: '/api/', + }, + { + text: 'Changelog', + link: + 'https://github.com/vuejs/vue-router-next/blob/master/CHANGELOG.md', + }, + ], + + sidebar: [ + { link: '/', text: 'Introduction' }, + { link: '/installation', text: 'Installation' }, + { + text: 'Essentials', + collapsable: false, + children: [ + { link: '/guide/', text: 'Getting Started' }, + { + link: '/guide/essentials/dynamic-matching', + text: 'Dynamic Route Matching', + }, + { + link: '/guide/essentials/nested-routes', + text: 'Nested Routes', + }, + { + link: '/guide/essentials/navigation', + text: 'Programmatic Navigation', + }, + { + link: '/guide/essentials/named-routes', + text: 'Named Routes', + }, + { + link: '/guide/essentials/named-views', + text: 'Named Views', + }, + { + link: '/guide/essentials/redirect-and-alias', + text: 'Redirect and Alias', + }, + { + link: '/guide/essentials/passing-props', + text: 'Passing Props to Route Components', + }, + { + link: '/guide/essentials/history-mode', + text: 'Different History modes', + }, + ], + }, + { + text: 'Advanced', + collapsable: false, + children: [ + { + link: '/guide/advanced/navigation-guards', + text: 'Navigation guards', + }, + { link: '/guide/advanced/meta', text: 'Route Meta Fields' }, + { + link: '/guide/advanced/transitions', + text: 'Transitions', + }, + { + link: '/guide/advanced/data-fetching', + text: 'Data Fetching', + }, + { + link: '/guide/advanced/scroll-behavior', + text: 'Scroll Behavior', + }, + { + link: '/guide/advanced/lazy-loading', + text: 'Lazy Loading Routes', + }, + { + link: '/guide/advanced/navigation-failures', + text: 'Navigation Failures', + }, + ], + }, + ], + }, + }, + + '/es/': { + nav: [ + { + text: 'Guía', + link: '/guide/', + }, + { + text: 'API', + link: '/api/', + }, + { + text: 'Cambios', + link: + 'https://github.com/vuejs/vue-router-next/blob/master/CHANGELOG.md', + }, + ], + }, + }, +} + +module.exports = config diff --git a/docs/.vitepress/public/bit-wide.png b/docs/.vitepress/public/bit-wide.png new file mode 100644 index 0000000000000000000000000000000000000000..574b9de4030c3c0d51d5f2187abee626f8142691 GIT binary patch literal 28340 zcmaI7V_+p)&@LR?wr$(CZQHh;Ol)gnJDJ#;*yhB^#7@4<{{ru@K=KQ`oVM&)o@X^H*;|}bTS1H zG_f}_C6Kf=G&fZ;H8k;b95dws004HdRMBwJkd@&wwzs7-{KG@%Ve9ZE4FJHy@8Mu* zY;Ed7U}S1;X~#=+^`nP~z|w@5NS#%dLDoUo)WTB2%gI#POHReu%i5UJgovMyfX9RD zOM$Jaiy?uBt&N>Cmj^G=U%gyk^qv=Om4cC|INbCDF` zCHlHTXJTo>Wx`>~`~@QmtqIE)Y%GSR#`cc0>G|K}nT3Rz z*_hb{*;!dR85u=61UXs61O*vH#Y9Eeg#|?!|C5!pb9OPbGdBItw&j=Ye`PuUpR!!S zPNs$~_D(AH_BQ`Tfr5p-i@mdjy#s-;@Sj;{C!mluG`6(+bCUAUMEx^v5mP5iH&YWa zCwp6hzesag{x4o|a4@op3bBhYh_P_|836~gkf1OJgP03nFd0z|0s zkIMgp5~};Zn`wgGyr}t|Gm^Ww1vT~-Ja+U%j3AnaaKHBiPBN*+ux{AdqABiM)C44< zPNwYNAmU3Zq6|CaKksYY8L1~{&`e!PPzPhcuDX=jP)b#)x~iITXcbI)dL`663v}<^ zo1KQIyj)ySS;P0OlBsGOuGyyY<%cHicK*j!(Rfb9M&&ryZCYoGL7U>(b!m9eFN(;y zE#l&HoqYd%6nBVX+#t6{viB^vMk{Df*Prw3$@O{|Tjsbi7u|d>G++1xJ%=|=^Lbw) z(+Gz6s(Kbvg_k>(QGru1)u$2RzGwT2fRGtEs|Ya6BBYrx%b8(BM*8Qed~Q{b+g9k< zk1tkilt~H8MgIkp8JJMxq7SeFr*^!)f=7%ox67D0T{yWAGy@YZ5Jx&rx}*xeSJqMl zlCx3mBytS5LP%b^MJ;QymQS~w??Wp^zwE}G)AS$g`!cO(y7S2?e%-(f8RX(2Rt^0N3aRK-VGcc`?r7vQxKnS_QOlIkjBQb|do5xZ=d2LOxw9~AuM6s6@9L+ndmPRLJhTNj+}*`1jGv#_Xm zUNkyViHhkJx<^|{SWm-Y8pcM7O$xYUF|tK|CKC7>reb=%pB`pJ zs>U2s^gbW(33L775yNdbyta@>*!(7Xx*rYUSgBPQftFn~?&@?3`Ue^dSfcrOXfD8} z*O=dKL(*H{`D&L2!>TfZO*C_9Y6+aALdWhpV{E?Ht6$q&j-oYuOG3SWOcuD-Oh!8! z@9*rbii=0=ZSrG&odvP~&O@&!IBmuw>-*HG<&pC8hSVuYD+dm<+CfL=4fYLN1vII*9saZCH-m_;ID~ZJJHK zO5np6<1M0%+kLQSZ= zu`pDzD^x*fffRDk6q;3+C~9$A>w?|%ti4As!Y7(QK#!7lVGu}lr6#J~v;`cAQ1MU3 zAk=^%uef2K0o;tBX6Dx>W0VtI3VuF-4jvpNVk!ruB;}7poh0QtUKHFAk3=BxN7?Z= zk#`5#HbN^&E*J7{VA0c!{+yNQu*0k)9|pX=U3} zs`wujYMfGbq<_=d2OXrE2oWEcL@Nc6qmGy_gMeCtEd?n@c3b=^U6Cl;^LPZD78+%f zwlN|z0N&Z*`WRDx_>$kO6}i^|%)GrKoIpuF=v4hRN|5Gu{&L*lXwi#z1eJP)=(b8U z+9>Vc6x+8A-{)0T2<)%yFF!59g^0vB9aESuYHA}5Ur%cjudK~A8?Q*`M1jG0W4u1` zbX7wN%cM1MZZhb%3lekEpVd67HBsV{T0KD+bbLW+pzPhgHvN7&aC_MDH?Yb6pLFi%~;t_L=oFGxV_zf7) zXT;HeWyQ*IN2lojw1VAP-A~g-f#AdskP(PS^=hIe(ggq%^a1Qr&a~_?qqS!PznDy} zrEZv-MCWp;#Ep%aH^9Z%fO={Q*73A~z-)FC(}C8*+?fCc!H?UL{fTHojaz(u;{MM< zpBvB`(?}d7;Tma#j6*7lp?GE9<(#Mw5D6$ockFrmW~CE?HIw087tLn52%h$k30tn` zo^TYRcxiP9X;dyAn2b->&DGZhetvMs0Q5imB|_CRgigWmJ%1(R2WkXO5EL*80V&F zm^`_-xo`5qj5P9BWKlaQblZJ&dIY7GScO7Fm#H@Md!Ss;^@HfDdpzha_l1O{MF+4J zXeIzKpR^tK-}TX#xjreiFT%Q_U->~NADK+XB16IJY?okeTClKZf{bEhsH77{xQT|_ zidQ(~Ph+27FGl!%m|^|*fHFt}WvnFvALm#}PJ2w`ce-XB&I>>>4-QSKDnpEPb_{1C zHyIRyAUpn>3rb^a$ZMAK+mX`&?1QC$2i+dMT;BIeG~pJMaSe`a6h8<;Iv5?ya8B$( zQUHM)ov_b4A%Pue?rPKkMH%U6oU`J$;p;)DYKPGI$i31OrG3>Y8IZ1d0|0cb9*@7B zm#7dFFkJDYV%1+{kgvAeSH_P2-w`_Zx|b)sK+|bTggHYYW-Mfa*rj5)J7*byxWfa2 z0V2o@X1B`D3&W_x$BcMV=j%s`15uju7i?3^z~=&>zl@a-&V=(k;qJQJUmYEwq5Lyt z?ZNQnfG@<)AwwD!6aoqWzC=MkC8RJ?A5h7K(;J;sS(L*ZVgtu7rw}NEaF|q6-wZ|f zj%y$3D||%lg#UHSH@jfm`&I%(ogJd1oM8KDzkNURHy&SH+>fK6H>e9=WlX-%-4=AD zE*v`K3T)w#s|RGT7nta?5`i6Gz-MmFl-mQfKkoDiLvG$ybzLbMKYC|k2G2d6GN?l$ zedi$>_NQn1P4JXTU8R7}YKbj`8AtF7xuVwz=1vo_F5iCw;}a_O)3idS?1rkH^w0kK zTcOvd!JtbMcGx^5BEp(A<4yC`?dQa5OWF(^UzX2~DdNrkyI$Iv=NB ziWCAT^*F27ubK3W*-83OF|bn*&~D!sC4QDxev{E)Qj+odO{z-2t&4l0&W8KOC~wlf zKr=vPw@vDi{An$}`p&Z46|tYJRzSakpUeJ0tobrr+pLBeCei$FtqYV6k5)x4SZd@F zWdr|rUHty3NSQo2MdA43gD3AOHW|w#a z#O7K6TmcbukV7b-4U%GdQ_=xQQ1kFnB>`PtdE_YS25{GE4Nw)4wHprcqyQ&*Ga`gd zdD93TRHRVO1L~uv$Tz+ts0Tpm&Gw2K^2z5P; zM>;Zuc6Ii*n_~vN=(~7UuTo3v2_=`Ng$)7!C#pH>jr#uNxAO^b7VNx=kh zD2Zdl>GFd}7jAU9rxoMMh$nkex5;&R9J&|Ab_IFbH%#ttf2UQ6+zP`ZOLRBM;Gc=ya{b88|3&Pk`s0IKawS z(WZFqVFqJR3-FvDCx${I-)35B3Q7UuPW&3)OP@Wmy%G{87{ZC18ZPs5ltzfMldIw| zXPv%dQcSUHn79&+JAD$Y0X>f@-w~{!^#?qUpR1Shbr{HP^S)?co#u(zdfBP`0iEZ7 zfjxKwQcfLs33{G|hVq&qX(^P3DZuhla6DbkD#h{Fw&oH+E+Q7tC0m`$SC#-GL`Do{ zfvM6pTvB7`xUHd%_WZ$CZB*Pdy~Z`j|E4w?K}Z zS>Sbnh&EOnPempc1x)NO{nT7P{7q;g157E<4`d4;pNnIJMJ9kZCd_Xeui7)fl0Z-v zWcvKZFq0Si4SwLF`HY~oN3WEwf_ibgcDgxBJgM?!&(PvdmLidq@$dc9=uBX5f+c7R zjY{ydde!-$8V+h8c3JXDYD5xhQ*gD?vOW@Z2u9schEH4tj?qmf#Cj|Q0(NaCqjZeW zz2ZqmB|{Z{uoq08ZCyu(&Q;IsTgSK1PTt)VYfi5e1&0z^v<3$HjdM&IOf_&!l| zZU%d$-J79?ni=SD;+s;hOt4z~kDk()sZ0zr@1FZx;9VjpwEkw~YN7Z!)A!Gi!h_)Y?MzlB900jbOnJCdaxJSKa zzV=|?q&R{>5zN-&sNzT+)c;eDMDvhK>P#W~C*> z1F^th5JLQTwgK8}{RVX5)(X9P+<;WKt?55jqWbNNBIW^%Cey^vfmj7PmZrgR}1*kZSJjAVf|rpe#{18NoT0IS*s?sE=1Y znb|U65s7ca{3j?PP4;Qf@D9iVdW=Zk-y5RiI?&1n)*VX((ic}+p_rLE0mr>URY2Zy z7Z162Lqem0y^07#ihdP;DvMpoQ}HFZ!8%x2=oNCaVj_=Dy<|*lNI;Nz7Glr{bS6{x zZaE53HfMjWHDk_(E4wP(4qN#t~%A$%*dpvWDIZH+RX!YF6tCRzS18VQV)VPGXh zgnT1qxt@S5(nP%7slhN=IM|z=S0<~dYsZ6wY$@twG`z9Wq+o-Y^izOC*;k7*i(QUn zmVpCoftXI{Pd=Co0j-p(Kn!UuGkiu2$>`+#K6l6%C^QjW(qk;t?=8HtPR~lOWx(DyyP5H3xMQDhT{sGZ4`EvF1&u}-?!^SwPu$h>$p}p z6;W2mwnng3IE~bV>h3(xs)ddFEKJ7!-jf)>A<}r2VlAjUP$%)XCE*I2C>0`im~jU(CKL&w=V z$7YPQ19Iz`zzQ{i>LR{33O)RKU`!B(VUAXnDvk)!s-Ph}=$Rf)sdTMvvX1XKOMv^Q zedQc#a8W%xG9S?H7Zehx?Knyb2q_*>t*>Tej7BZ$2{PEYq`*)FN1$9tbOVuC>3fJs zYaMrd@EPpjg=;rCmH>EvNTHMBeFGzu+E<${6hQBUwZ;wxA_@$`W{+D-R|-r6>MtHi z-O}47@P2!MNv@&1seq3WEcTf`N$|Jsnnb8dysiC^g;fUj+0vm{S=9>LBKfpg8ItMA z=7Cl$lhYPSz8XN+lrU|DJ!j;9V4!MYJq)YUqRO6P*~Y={I-Rm&ju!P4g4X4=06UzA(`yqsB#C;wX;{fYs# z#%E>e#&QBP{Nx6O)Ukl2(x4|Pi;Qg_M5WDFx)(^u2wP3+x4lj2VNh?cjM3u&eGPUB z71b3AA$?_%nX-w5e8iX~RNlpdCKrOjO)I|@xj%wrcDuJicU9L#tTOcU`cqvP$RSoO zmj%|BzMbY|6^MqurVsnob1_2IgkM-8p`AlYw=OP&S~vGpKFTI>eY%zaZ4gsiZj-Qp z4Fe4FQv7MOWe{n|ZczUy=t@gh48200JBuu!>UK zfK5gZ#V^kp$vHNn(T%QUPe_`2d#9QUA^Jrkq+wA&Ba?*1A`*zKQiH;Mm?U;=qGi4j zi4bJCp>kamWly=rVc$Gl;IMM6hmPxN%J+6+nWxG*B>WQwH*} zx#W3+$C_^GhfxgMSO;L~+9Y$TsSc2MFJ}r8{Q)?0kbIC(h=eZ0J2_rmEg)5r*(8Q| zj84<;`SjJkoFdSOH+y4xRZE&V2p6#^7kKC8z_2lZZ2uyQNumL|mGV{gy?Ptv)v$*8 z>33VSr+|a1hppGENPFg~9ps|Q`QWQ@H>>7_fM9U6zLHJ6?uDdzuB=or*Sz0Q# zRkvSCx8_kO*cW$))<;R;?u(q?eU}$%tB6}Etz1pw16Ho}aY`Lx6 zIgWWH=wt2*ME0daX$UarUE7n;U9}T|aZW1qu#YPxVdTSL+j3wp)(=N~acLO}ARR_^ zh1YbB$3-sz88G9NBsx)0O*ZZ<%;sy@E2fxQj+hcVaOl{RduUIf&W($)APk9AD^V5W z+$(Vjc{${`KUBZ)cT~u(s06$h)eg=KE4 z&Sq#fS?XJ_yve2@o}{}GKRw9Ps{orO}Y0Zr;wQ*6b0;Bxn|*0yUL%x~3t^C7%xFlO--qJqc=@;Sez5a0x( zu}p@V;S|z(Wa|5`o#8qn7v}P|IbdK3M;XZ8PY(NbNTduQ$RnMY0IOBrsH!fN->9qB zC>>gi!jK~*k7g{Y@MXiS#s-Dj>GuwiP0 zI77Tv+-RuA0^puu>rZst3EBiMKK_JL#bbD!lC99G98am(Am3a@;;SClcJ`Z}u1w1~ zS|L_hr2whqC04Yk;~2+3C|`AxO+Di5s({d9>M!71Duobpj~O_4LP0=W=&+jMUx4-n z?jqx(kdGK&G;Y0MOj7bMOLe-+NNOb@Tcb z!x*F)(yjKXnc~k9?7@7Do&wy7jlJ`!@@(%cYoBUI8!C<(PyL8s!wGLP9vKa)MW`_K*BR#GQ;D7dQ8vzZyIj^o8#p>D0{AOwVCZnAK8>2s?QRV zPO2`SymBdxD((6y(}FnCBoxDnUu-6<~4T!Uo78~@x)4WMJK;SrpppY#A5CdcoB`(0K0W3=DQJb&*geN45%thMgmq|9mR(USV6$(j=C_+=r zL&|foYLI9`!3~mx86?Tlo=1*))qg`knDVEi)AeKwD^rx^(%ETEU+|-C zuqZWpuQlI24#!P7`1=0)Ac~IH*3~X}-UsReIV4!xUHJp%xS`4UJOs7%3*o*~^1Xiv zIvR3*%u2|)@$r4LuO1AiRO~m%Vlt|lgDj-|GazQKC=+Bkw$QnAKIs`-+4mTDZ`z@2 zj2^pi$<&Us84Rr0A<=d5nkLX=rDGeu8C})q45};ErFyekF;z2&B|(C8&f~O%yt0OA zm~&})B2H|h=*#HuXTj+eb#}lXa_0E%F5T^z2QO9E$tQw{1^cuEGUNf3A!P0LGYP!p z58MDN9k2)(qp(K=Qmylst--Nc*d*#WaeglY1{Ti%GI9&XeF}0&jD%$I30Nh(0yTVq zFV99wNQHju^`0PMYBT}!Js(bSI-<3jU7Nor)p_Cc?h}v=T|8jOM$XD*skkK|Wa0*G z!ibiQ1(ut^F&X>GAc^LA*pm^B)zg#n$feC=?(>kd!~vPIT@t^K<1g$+oqAbum%tl! zfi)SRUI zoH%kqV&=3*Xm%!2rwhPk7_FCpOd@JYYP$&&{DFn7fdxMMQ#7#H>g(kgIts{p+3h$NJ{5Wp-T zU|+>wcTaUk(41JI5njUICr+xH(3{w)GoBdY;(vPrE?81mwyoqw{+O8ymoo0Z>&5~o z;wCpZ8_ubF{r+yXW`rmZXwbdmq1w$0zILs| zi5kQyScd_pAiN!T0Q1CF)E5vzqKO8#Y}a2czEPbTY8wuA9^Y%hM!;Ssa*nGgkiQUn zL3C#hZPs@g^E*G!n#^*3l;Y znbUA+>gKN1;a_`pu<=|plZ5f?31iX_pMX<7>`$#Vz}?y6#vC#bETSbjOPOC$ODd9d zo^Em4{*c0R5Ap<|wcu7iK&pwKCrnoci7xE>Ml%-t3%I6{C!-on$A~~?;?1O^5;mT!yq#J?#5HTn9>C&^OCP`yvUBJD>>Eb#WQqmkT}XPag1bOLfXHh)>cu?mnKrO6@jv zj;7p{T*oKy2x zQ_XE#CI~HLhnkKW5Xsh?^|u%$i9nGp%4559krRR?4F;6V9%Lk!r-LF7k`*#JsXQ4Gpdy*ASkfh`_{S|-v)m<{=$vh+Mh zt#y~Nu%Q>vn?uV3_WpP18ZBmwED_RmFEVaEE=>NQP4#o#eGU#?#1{euAu}e^^!YNbM*gBNaC3vT-wQ`otG7TomTGH~ zEUgcCtM*>VkK(D(TPtt8j2B;so?ck&StdY(o&%QCt=p+w7~b$Ie89(_NlwEePSBI# z52|kI+TB5%qYN?v9eeJ`9Ki-vvgerm^KrFtOzb|~qm$dQq<6BInX1Xuutd3G&-t_8 zhqPCdj3B}g>pA0NOlWmF0NiZwLgTt`e4gg%?H{b{%f|g*ep2sBm+C|K0{hO)FQ*{F zx;$jzIH|*yoZc&qMAA75e6!BXl=5v^k9UB{krI``3#lDU?iFyuFsZgpU^FbH4 z1O~lL*F=IV7u+@F&D>jN1eYyi*ZJHVt+W`D`<$|FhXUg@gP;2z+c7Y#fUmd4^j52H z1G~SQ^3trD62j1&2a9#hcAjW3dGJXJYCtojc6P)1hWEC+HUgy(&UxB8^!&1abWrtM zy8*41SE{DP#CxIcE^UIceRzxFStB}ThsTvE+mwTKRy~UZ;wrdW!Le<$t9O+?=sM zaCuxX=zq49U0e>YT4D|Q#`A1vwrQqv7aXZ9HTFj34Ry+r-2*qATtep_``wJd=i`-v#$bk+V`zI zInBFIn0Dua{oAJdYYgV!Zdrm4MiHAT>)IA0`~p>5pBlniO9wn9E{WIJs?Rx8{0fKi zjUKSPrF$Qc*kn2HX*v+yJpsxbF3Aw*Fv97Xva&-+&1R7 zaoa(QNTygrE=NhzaU+cZ8skzbvP24XS^Jkb(@4Zv(p4Gl--n;Y@P@h0~akNaax$WeRX4_=la#Im6!7X2LHCk*8pK1vC^SH~!Pu$Xr@ zy*8O25l_?cXIIX(nA**obkyO226=yqTK8E)cx;b4%H;D^3AJ@&J%mI6fBl@*QAT$y z`}T6;k=VWzOI6=Z7D>53f* zV@A#am|xX98md!FB;~j>@CT3S;0>|B6hBcG3~{6AN>v0ZcD39EnH3`mqoaAw&oqq9{<~h zqrBfx!teA_d?0VUHl)-l9SB}tO?0^!`QB7m?%iB%_C8tlPuQA|=W2&#eY^;Wu|m^e zL{G{A3?s!E#N*5AzH)qTG92H2LI#fHgq)vQEd!r^`&4ZQmFl9)2JZIk%asvp?WXT= zE04RCyEDcQf!(0Ibr*d(b<2H~nLT0;kNwWu4m2_67;&_YW1GbgdAXV%11aubRyR>` zy<3Uw78*Wj=50rUw$}qp%^0vPpHbxzX|{VbF_+W(tW<|C?y&1}HSZ;F8M2YB0YLd^`M?~?}xU1n*jUz>VH`}3DcbB&js$-#i!E9Q#Eqe4U zB@E`zDmW{L`au6x;?qwp9lxvg+rybJ7kC~~e(E=?sve*-`Wo)jty&DL>?LwF`4dpY z=I-rWP_q)O=noXFyp0U=_)*;Wqdh1jGIj$jC$i`7S~4gx)3N?^>=E>OY#>*>pLvEC zA3qLj=GT|8BZE(G%J$&{(7R3|e@{Ty1b#m6*&A-!W*M}0rGe7&Z>*Mj8(KBMB_X?d zY>wo?iu0|;J?pd>A$H#B=fP}l>i!O%e#dfK^^IHv&q8hY8kdXFOd#Kk-H(YF)$>x^%c}||vYzzd zVgY^ToNUjsD|Xz0GTN#mIpfLYkY|qcA2alLJ%M}i!6yRH>^%}GSFSGtTnW(*?Ov<; z>9IZ*M<_Dl;y2C+V*bEf(g(+u-?>x(PLloh_A(_e`S+sKTi}%Mx+t`^NLhc-P?4w` z_Adg)X7UggrWA(Hl)!Sg#`b-PS3xFH!_h)@*en)Gps;Y_ zle#=OR;<|fFG2mQuTbIv8eX3C<^ zxgB3)=lZQG!lgxva`Uup_yure;c1ceLQ?lg#@RauSr%M)+XgRjI(;bIfE#wkOMxm0 z?fbgMtr?V7h?DJ@YpGOCDQ!BvowEMb_i<8OBK6CFCjaoqdiSAwb7lFxQ^?sWE%uYZyQav#flo=+>>H<7KbT$cW6d&jqo4U3_(uzYPiYw1Gt zPRq3R6iXT}v{wP~z%mohrkRj$VL{SZ139{IeIadOp#{Fq4BGsS8o-S%W;0|y7_R9} z7+ZeG@0Vb~eawd=UQ!i$iiWs6a*uV``u#cQ412-ZSJ}p+ak^?;>Q;975hbE1jcJof zyi7X<)IK+3Ka*Ec*By)Qd4b~(cDz!CKDG1Flsw)u%^Z}{2HuBmwzm|kV#EXKM#jw1 zAb}@hZ7^k4m{CS0rP7)~O1w$`ozg8HnU<_1rNkmb(0a*wiUaY1$Ak2%-zzNMi2aC> z@nG5xC2bj`lqkGjKdB{L$AztLK|u#IvmZE5Xl^N3B!)jR$1c!0MQ9p9sWx@POld$kyBJ9>$L~85TJMCq1h@?AI<%UTP+Df zYx68ON)^7SGdf{+;4M0=fXl|asF?wLr_b7z)&?)LbUiwW2*Xt~!nLKfVDq-gAtbG3 zdoM7iZAzU|R(S?eQI=S4#KHq>4DJ!C3T@#txS*DPX~8^8YJu@tM{v+>iar4`W~GQ8 z_(occj8;VjVof~>dpsgbEmX<{UYN_;jy_1#X#MkjZCrZUl5}Zyc|wtPp}IPR%kECa zIj3_lK3{H<%D1Cke8ONs=f^b5vZIr%bq;m4b?E^4I25<_V(^jMDbUFvO~2pkOXIuG zU{Jo0^T{YS%PkT#S8=rF@F-*xQETXYZ`f-~Z*xyKFdKgzEY?B<#5|$+CFm=DONk5a z2+tY*&e5kY>xS3Q_d1tl!C!O5XzOW+qk#o_D<0EqPirG|q3r%Qo(ZCrn@_*U{o&lV z+ZgA7h#O27$6nJaW1N=lDB_R~^XOq{MN8qGimek$@Ik7E#6}jrzwbcZci*yG1fTge zdLCQ4UbVXH3`w4KTd>~3yL!aW+Q+PkmYcI$4Y^%(%*-n^m#8diMEOc1f#L2{noq%U zr44?jx4hW{M$QEX=ORAtLtU(W4}LENm1|Bv|2C}k{Z(NE<0KNsf69|U1=3*&SS}&) z9zMqOlwW%3k;UROroTIieZi*GQZgU>moSyxty+XR;E(0IR+Z-hLMYV`$vneRw}cjD zYAz+NZh84K$SzsGIgLTSnc?m#q^*3~deNn2eT<1EcPgEEtkKfuyb#S=uw=s}`Tk|# zc+bhey9fUMSXC?4o)m$014VgW3_73KtP1l8PpcK>QvN?4Xf(R55Owa8vUY6Q{Se{! zoaB%3kE0XCuRbGKe>bI}ZT~PP-v1p;{{iM^gBjc%_;eGoH*}|L>jGrg{Yy{7eS%D* z-pVlmr@*yDc*Ia2ToeS$sTT0_bPU-^z%DeM&x<_2#gmgot<2HEfJ6?6*SB-A(=!LU z`Ulp{Z^3y;{E!FZEX+=S%%=-8W&<6~>-2Fc+_yd$sx{uCZJQcak=^dZb$yEn!&UZW zIgmtaT{c?9>+ex&{JiT8Hs_1#&Qo#Gjo(Or?J!-1;~qoX+Tn-YJaeV>Z3rwrb=HE6 zrdVgpy6S-+nk|xfSONB}ZNBM&nhRAas)xL;t;D?uz6>UweE^KN12(7p{`SkX7Sm-Z zxbhch-<Jt=2NgIo};iC?(Mo^3*q|GBFx$41_b}d+*N*Q zDY)CVziFo_3w9k^d5iw_``OnUSXbfj*^kq86Pdrf{KI+e>@`}v5M^TIh2-_!15}z! zMx$QUqZ6t%f!5i-^-g#D$|g@8b#vo|Aj^5FCxAqmL0H4n0A!5<8 zRcr=Pt88|J-`k9KGMhS+eoD>QDUitdAX_7suwac5E=Zi*19GZRy-rfHEv>nk#@z$i zX#qAp$XV=zp!gc|Z**q(mKBqh((oBnNpIWT`hJv?1-G^gT69%NQ!lg^_jf!F-0ewK zP@J)^ZMbt!27kVwwJg>gHUt&sl`C9*CxuKU>x<5Bev9xdQ$OF&$d=3uuZc2I)(+y+ zyXp7{p)|dI0)jr6RrvY-Qi*gRRg^PFuqNA~KIU2}L-AxN8Pp6_l5uVP3j$4vI1+1w z1upD_SF`<^0u}fh`Q0;9G8$-qOyo0`Ryrw;+@>0&@q`(rnIr!(LJygH5)nGJ8hu#g ztQSpVFPu8L!Pc2!<<4c+(!lCfHw54B=A_J})>pnCy_eus0oosJaH&=2j_C%Tdud>I z+*(>4@L*{7;-d8P7y2FRg}-nLE5Ux8x1)6Y=r9yy!e+b}i2-Hr<%eJ8G(*N1ZI$^R zSy+A6Cn*xaX8KT;gqoFNnfrY?hR~tJeT`k5H&$1?ew zvZnb9^H)=Krk>w)(=K!4V$Ce5c{6@01+~fp+R&{L%Yt$8ovP{+nSvhfP50JFMa}vs zo@^T76P zaJkcj-L1$=^H$WX_bON`F{7cY*2B)0VGMP?Z|{o{*I@PIBQ@iEkDg36xmWCWk(BQ? zKI0O>ww+Uxuxc0SlqMj&Y3rCu|;b< z-#YZ*7WcT;Ld!8%!pXe3BpzN7rWqDe8{@EzyjF0C)#rULYszQHRU>rNL&*mmz+Z|h z9F7Saec;s9bv|37&eRFxpkWK(3~Qn8EnMGL(+k=Q`&o4lMH{2O8(GzC9(#_k%t1JU zm~~YI*21m<7+kZaV-hhm@{_KU-?PWummm`9m#0P9j;PGf4&Ew|x`k2-9!y5fkxT$U zqrvw2w%P|pj{Q24F5RB3;obz(H7B+-KC~uYZ|Qr<2g``HLanB!&OtDcm}a^3j(U`Y z1GFYFf=#}a+C^+m2V?`PzlMeJA>-za-O>-P7B(Bn(4&P#mig=vs|I9Qg8nwNzA(1F zP($#@G&BF5AE4e+N4tsh*Tm~K zP`8Z;w}NWn&Wh$`cm>_}Z>Y<)r&Cuy>z`;U6h^{4=h7~QEy8O~9*}8RdoSw1-c1Zx zB2%z!0Bi$rT?AuzNb{0}%n*K#rffdB@QSG=Dz2>2RWD0!D=#SxRyj!OcH+JZchyq zc()+<2+MjgLm?YRb4Kqtz2hftS*w*>aH(+keD)+$#c&(#Wc|)$2Wlw@+D|8a>$4Ns z+rc2z42=0QBfclndQsTBNI?9$39$~gn<{z)GKYDxIL=hkZv1nhbgasO1Cd)^a+0!B zNA!DP;u&~VK>)l}$a`lCd`ls7o2_4BL(XSN9i6V&a)BHiPA};S)3+(7qAt4+8BKbj z`S*!;3ujj<83SC;al~JZ@BNsg8csbyw4(|iDEB4DY z_olw7wU*VGPw$?NjY>99n~Etc2rYi3YVDa8nd-icUX`Jo&HU@Y&4-tl+5NmJPaBuc z^Reu9Rh8!QpB_Bk4h`-#FfFwKH_S;acu=W$Io#*G^FDwJj9RTz^ZR+}L%!BRpWopY ztIc0^bRDzUe;VnlpmOVO?cS5G{btZ-lJ;#kMVl@{BmM9wU7LBJRKV!bwGL{IfKRsb zfK|iraXuslJ_}zu?BPs0t0K5(vOsAf9j{Qb7nl}czq@1i$Hc(J1GkDl{8b?&CF~nO z`cj6&q(7V&QQYrN3~}LSqN!j2iW`LvJ1IhwdLQcV4){ER^9Os}j@IraLZzGt|eo zHFouu-h_H~m$W)dMqo2KraKw3H^+d_27%p)hx(kXpCCrRqbdbT-iZrO5^DRzmoSkG zNM_=o*p)&Rajl%3=pZHNoqRp3o(@*)A6NakIsVl)1yfeOmw>KPwT9(fd-ODcDtKe; zAem0=1A5JNTBWA*Oc|^JcYU7a+eRTWyL44{sJVqGDEE$jVW5349rgNdT$@^XB+x}$ zBY3gqmFTIU12?ZMx}|X9l(AiwxuZeN*F#w9e`NhO^-j7xKjIEGSaENy^j&0j$Y}>YNn~fXWwj0}MY}-yg zF&m>vp0xM(_j>+-ot-_qdoc5!>*&B#@~bpqonVe{Q0*q5pDm+;T}=~{y?Sw#net^W zp5E(eOwOf2$W?6Hhx=8o+_!mJr6aeRQYs&ATCBd4g0y?sDGPsCT3YFHVI)cyg%6DD zl7MOYy6X{}L?lyLGk$GvKd%13Jh`&pZpK}<3lj&;XcCIzBRCTXt9JIR=wELVi@|Za z@hxdH%ox4^Oc=4t)>uWPThgu_`?HW2`g>OS<0{5dMP2@AeC1)Tj`EV;O7ku|*66`; z7=A1Djyn0J;WfNLvTXgn>r2^0k^OuEbAA>40?P;A70FrFV*RVTAD`FYW+ieZlS1?S zXsq7qyl@&>iySa+tM zQsbia*W3Zdx4cmC1N270x(Z3=v^KEgcLv?jIioeJl0|*)h^bV5S);1Cv{0%|Z{}g|H(4frVHU?EwcLI@CsADlAta zy%BvnC5GDvtDd-%!KzQ#$13ctvxP~}12**Y1>?-x>bj4dyL7`-V8=2*hZn>$w%oGS z*GffpK#RXsz-kJMk58V15iUMY@jgYYw#e5D6mj}5BloJR`vNQ&pB?EzO$cmMk{ilwh}5XFJEhue}5g(j-? zsHQ}Kj}x&564yaF8xK7GcjR`r3^XS7Y4q_;^HDbHt$UhBKWVK<>)2*Ga*=wsqpK{A z-uf9XGz6ZC_P0NexCH*44r@@bp|62XhADxERHZYTgsyH&hPF+fJ{P@#{F-g9LTH4; z&~k;?!%t%VxxXXH2kU1TFwG!kBkD@E^WtTNH^{R9v8>Wpr`PtUqshBTRc;y5 z+=sYT(!AEC6u5OCSJjbau0r1xG_pmIjnmerFN^9hK{-0Z zhI5I1O~|UIbTm!IMyt${T94V<4w!J)cyXIQnkm}j2%RqYl@d<^3j9v4YWk+}O%(Gg zL^QsqorQ73(O-m-Pe3l=FNfcAK66P8u8|&ob4C@SJkHZ>ZM5l^>oU>en&W?qNG~HV zmL@P#nYhlmdeGHjER3zJIm=aFovxHg1hZp%uJODvFosaYH&EgrlcmwLfiEM~wj7Yn z`q+q|R^ebPn58fJ)kL`N_BeCbM0kH#1Nt~Iyi~=$obiMU(!)~fz?Q)|rU~_mx9?oB zwsT-{f+b*B^IP4qit6=i|AhK`Im=nhu_nc#-Q9Ec_ z_zNIJ`COs8^Ch}x$tG<8R{x3fd1{EGw`FP|fk!c}yX$@HOMWtRqu}7h%lnoW7YU`w z5`BReM8nVp9h!;&kYrOFx}vyFhwg2Nwp!T4dcTQ^t3AJ)SOD?KkKR;}gE_{nt(rykZ~etgA_zBd)#*9Dx$ZIu2Z#AodaK z2pD|Msx9-8zCXhp#0Zacu)YK5T1ng`l8`~?O>_gp)XlBL=ToM@v1}VXKOkZik^+A? z1lYDc%?LD?^D#^kYi6#VWW=d4lilN-k9AJLCL^>h)6?Ya`r5(T(XhZ?>7YYnq}v>b zl;o_Rxx^9czk=7HuAy|B)l@gAG(CvCbPY5AG!SkExV|?x<1OrWq&uewniG&fuN1?X4xI z&TL`2EcCFGKKM(C0OI?8Xi&%S{*kvEi@Q8<)|D!vIaufw7WPI}*;-l)+wyJR_309K zZZzK>LS zug4RNmek;6Dd@Yxx!1Dtqn?}CV5wY#xz5I(z%f^OTl@Yi&6J4uAg_m;zY``eYd+-T zotmfC&?N+XyKRbLcYl0tM*8rlk_b#L3*>9(H=|q1{AM&&L>4pd*{h!GR5C#3x8}se zk{P4~5uVMF%-(lQ)fM&y_0bXGb1iCp=-+_QPHrc~9A)rj2Z`^(+_c8ALm|pp5{a>3 z^9FyO@$wSe6Q;X|#?#ap+YzSpn>rm1d=Cv`o4qe~B`$#De8>B4u+$JZZJ(q8X93== zy>Z<>$Bed>`>zBixjQ;bJsj&ALLr588onm}LDoJs3f{K4 zR(9A3cJiOMyp-tc6>~6J%L`ZEeW4O6!LCCx^3W^jXybDG-mN&M*Y z<~h3nUfR|Nlb()pHn7XGGYE?qwWQo?o{-6#3!8R7Bq6p&TNE3E5+V{vSEkS#PM^u( zwQ%&)BtxonMkVo!>COo+g1oO*p%Cp?`AIGA?ykF#T5Pdmw}Q~Z#UeNLo9A1q2GP?+ zxq#P?N%UkMKJ!Urdp=*L7@3&3E)P6biynj3ycxn05+ahxlwl3 zWbds;nr_s^=NP$kA#)bFsvMc;rbc_i92&bC=WSiF&Vc_;AUry2B`AFRH_zy}JIatou0rT1xtPDY)kOTN~?X zQOkOVw_U4AhMayy>{1>=kE2{KroGWxO6FUNt|a8_;JC_xllVzCN7ET8oF#02r`={v zKmmW-=QN$;=@ZXq;eGj!PN16hKM1RKwLfPqS*wZ%k;xf-^CL8>2jASQVT({8Gg-2f zVj4cc7V@lf#3ms2j%=3ue(q#_m@?Z1=rkB3QHYg?3-nZ!qJyW8*N&G_1^u>p{x8vN8|&9K>$w zK3SyCvoqqkRPMG&mGsm?DKc5t=L@o1U~=rq5dfn>MSkr`{v=)RP%~`6qco)*qmCXu z8VTa#nMPu*aMCLtl5l7Txo<_=NED+;hV}1>kQ;?E04ap!)spIyZXg zo>0Ls-dLM_%G{$SXRRETpj69#L!!)9!Yc1P5HK(7;ht#ha3bMIRYs4d^mV%#L3Z8#3CdF+V zqmAO{kj;rOSBYuxHI(gF)}x*DTgZEZ^fvkuGI5^c3xqP{zM!slyA|8L|E`Rx4ddWD zmboc4*n#%G=pkv~WJ6gojA<|_9~!BV3bdc$Yqbl;--z6Bdb-Rq9O$r{ZOx~2Pg;tH z$3OC>Bh4?C+?d_>OIIwu7%26{wC^lddqC>qb}Qbex9OTDi3qz zoN7lOwV<(z?zUTBD|e};)6ho$_#>Zn#jVNn5sR{~8U-mJ3nqf=Zs<*d6)9E6Y$P2% z3)fa(Ia+VZYKv(+YM2P2&Oy{1Ziv$ur09SIN4;NfyCUYew^9?x!T*N$d{#;ylvUfw z5tCHmN@TUN*hrJK{7(*cJ z$8*YOP{ePlle0_XVH#9eH5Sxo9PG6@-%|8-jT$YuFTGx0r~aec^A(py@6Gfr!y>o- zrGWe=vCn5zPY`)09I(5Qxu^7~Eoij7rn^1r{Gb|+tM`6?IjfdNsXfQ76k_N%msUqS z$`EYN*vbx+aZ2Q=uv{TdZlER?V#6oX&MUZ_ZqsUPz=l-QJsd>!Mv>UFwvyeat(48w zcN!#G{2phUh=-b5#(dvZUOXL75sz8T$7yEKCT#jJ=fK3{lqvoscxM00Joh*bKv@puI1~FGP#lR zYv4g@+MZK`+0U1}6UAI%CpW`E^dL5In3`_>!NfE7ZO^1rzJ zIiFbU{jR@0#dc6?7D$&s-RxGX8kJl7^)d+8Q@-^uSZ_wXgK}7N%CW z642Ry^%XI;9yM{MNbr=w${g}}Dok8GK-_KdHG<8smftUh+U`Oh9M2!lcRxB?`vVK~ zH9JTsh(&7#1#?w}WSN`mPQOMZnVX^HeN)tIw`RJ(cOQ5@5hZJOTzjes=-Fywn%^xH zmlS487NOjbkV8)VQW)IqzHb;UZOiN-$88`Y@Ym(sVdMb#1Dy~_X~4~ z2;PvhYut(LVT{)+vl2_#>BQ^@cdXl@oyZ;tEfRxw^IJ6$X^~ms#99_#U5KbDop%{$ z`c=ZL*Q@Ir7d?T)ru4HrVhqSF%<-WFIUMC18y7k~5Ep@;@hw$dt4LQt72E5f#a1BI z2Wuaj0gtD5`G<6gy1{1oTh~9BQ|oF)AoVnnW(vI{h(lfpwAF8JA5leW>`f;O>~o>yVz~RW?43qiFJy`Bcp*JHb_V6VD?4= z`)A|?i=xnj+IR9Dv`bNCBwq@!>WFusR=ZN@XG3{ zAhh0b%beEB(<$vWlY8EF#pLxFA}qWa_my8@@K-#=$~}q;p99;<{rk~&53F>!>@;HF z!{SV*2;lGx+C>*zM~&bxB1c4X971`S0;3`e=7Ks?QM9;UGtCvrtGH-s3tVr@l2!rA z9wUnvP4Ts{PR@0CLj*V0aH zR}#p5TZW0AeJ<-WV4c@dU}2+tRJWcNHEVE> z+I-R0pnbSZltZ3NgID)rs6%lY*^I{mPu}XQj?WfdC7qBVl!P$J+;=0bN13w$0oN3h zoe^9^s&w6|J^LW}hWJap-c4Ai zrDrBwD|~L;KKE;qpYHY;WstYW9J|q=(k@u_tbDWHu+P&UPe-0c-FXt8JJkscn#W4Stwm3RQS#54Kl~8U9B9u4^|UM zkH&cYO7R9gh0=4`t14%iD>^FoeX$Jl>Rx2&bh3|mM;D-3UPtLdhz?hUsFnL{k2hf?jRTTe$V-w0Kq!t^ zo6IqbU-4_AB=Mkx#cLRy!H0mq#x;=oaD$!~F}kkH0>Tn16?s&}K`{8>4e zlL7`)*e+7WIjs>A`P9o1hk=`FUB@G9AlzEkv#ag#QY-&>th+^^%<%0&$B3%!@Bxn# zxF@~=0RRr_a1{xgS}VSSMXr;T%jJ-tN5t%?{*Eavz3Nufrf71<{4L0P?}yedMj7s@ zKljWw7B9Rb@vUFJb5D7fd86Q%z#5A^X@lkyi~ggy@|!!mmeJhanmGeNg#ppD&Sr=c z#IHeIXq3F!Ne>M5bO}F3;?e1C3|3>r`yP$I4rB)}KRPw)`pFZ9xaH5D7w!AiX`u#i z#P$A>4(Ncom9+pPz%|)0uCr?q4X%bx-C4=a9{8Tm7r8r>tU5!HeG(Np%JvThF${%K zLY4hq==To8S`B{rOcL} z25q|vi!}^Gp!b|L{5=0Z91m6>^H`V*Y;PLTxOoozD!`Isa4-a!c#zg3J3SRBO$sq~ z8lk)%!u!Zn*cPQNHo%QJDzhhmB?ak4bu=Cx_M!tRXmN(+6u^zQR^RD+pmh}4z{&kS zR7zI3U|wm@pEJ*AfRw%{_(h}imNyYLvGMh+Syh+`f1sw)b1PH07cyx;R0QDsGYu+O z<=|V-G{%P+k7gt-ES$ov%{i=NziAasI{ZFb_;hR)DPWK@Wd5cY1<5o4h{hmaY7$ch zQSoT8Aw0k?ij*wugeg(z0*kLQ!7fGmoV5co*H67L%y7zBRDroaHq03>idPTuNarXV z)lRE~6&+;6XwQz9o=jWYrkP!5!gyfM|Bwqxbi zpXD?%DY8-^mNav&6obX3=cwy}S}j?yD&I9lF{$2iM%~$l+$coD1Hqy>$LbbW8-0}} zNh3#{VG~Ky;w*7N27nKb@Wd`lC*{K3X>~Gf*HIXU!X*<<*NSJtv!5Bd<%Juj8k&06 zn#G0-%|=fx%*Rf(O!$T5?XA<$XI%jJ__Dw{)c)OE5F_B^WmFRoK~w(5jrG$WHUU|5w2BqOmi zIeB#spcSn_0iK6~b9E>)rqog!?BAZ+nXFlW+A40@oHQFl=Q40L7P}=~t^P;`zAZlC zoSrz^wlhmnk10rbi;(IWQ?^vV)B%K};)@dY7fBk3U1vxR>d^>t!=%Rk5^>u5mHChT zu{lI0v%!w5Z7{z-gbNOq$3ua*eJNf>htWJE%D^gP;c+%k+V^8mgfmhyCd zOsf`&o>QvvC_fK%OJ@<#h^6K8RJ+v*uQ6b+YFF4c1>%uVk~Tj$c!in_eW51)snS)C zkotcBBiC%h6vAS(_CUmq5*!U?qGTsdykNO)e>~;EaZ=7J{sH&)I@lOZARi)w=u)$k zG}LgrEL>LwMcRz3cp92k1^@7)+{XBQKCNX2hGm*GxG?mdTel|NLpmOMTGF29ynK~| zNfZ*;)YyT{6OFu5fYe{=ZQwLYRV491p3)(Xw<3j%P9zKz3KyVvN#b^hn@Q5f=T=;3 zPLcH%C|0FX5sJmsn*>atce5f)XLmMIj-;;I1rX11{{5)Ch*cVfk642vJ&(3tfnve1 zISEfVxbNfOcvhc-mOWDs+^?I+-8DsP7a3)T_5{XuEb3wfR;#~x27Qu1rCxkOh5mu6fdfK)z|eFaDC@ zB@|frG?7dvCTgrh8$i2=Yj03Od^8CW)>qv=Yn6UuL=5dV1ARLNySqv_r#`Ro*)5S0 z(+I#b1uqi(PLfO+@s~@(EmK#q4ibKX^6*p%#07Jb3PAOG%rS&zlqF_ftNQg!-LkOg zFFdpergshxK*7peZ09?&;c8=nwbLML4L5rBpnFqTg*ikfo>Z7Y&7?4l=qyyIv0Xoe zxDA^J=Gv*&WM~t{zs5`)gJ{$#BTAL~n?8P#z{16cjKha|$^{TTRKcQxS^HKLVTLid zcBmu*@PxC027u2Bkf=FGosD#PVEvz{fBuTpOSNQh2|C4}KAw>;&K4&jW#tE#g+|A4 zJl_>E5j1Sd$M(z#yE$rizB|zken=p;lnvkg7sR<`>$F{3dV{QcKQv}wge`Sy>Y$wp zjJE;K$?<|-bGQAMctQ#aqfO8eL~;2>>D~o8d~1MEg>fL#_%Ov{VNtQ`Soe9TFTf1mH`omN9M0r}{pIFt+m z;eUZ1j5%BLk@g(No9KLkh56e4g~%#lfTu8!{=C`wa? zY<@o~&pM(3jI)E$@0Jw9I3E(^3g^veVdbTt(_cF!7(GMr-_mOocV^Px+i0daa0Qe2 zobo$0|H0R1r2^TyfMK`uhvz%ft%Gv~0UuqU7SO6Q7oV$NZdfTeM%9nA+BZtyB%qjJ1iVhi7fmj0|uU==*D*2B( zv4OkN8Ao%HWBZLN**iWoEpi{6y_LJ%A{2`D3o9S}jr?DTNt;ajG<<6!U$twLms6x<{2V$`F*Ey#|D? zkIM$ZHK<>~I8PR$E!U17b4qJ9 zslR?`WeURZFvu;KqW)Xcc=z2wYGhnzgrOfQf_AmRII}D6aoO!dJIeRNAtU0x#Ze^1 zE}8v*=3^{{P8}XuQgjod89+}VmQERdy17;@;D<>NgtGEbtEwGy;#jC}-Ao3zD^!1t zsd(TD8CzGY_+?+SBdTcwun_sLK5)k-S~tc9@+ik?w0DHur7ngB-B3oI_t%UaL~H&D zFda7Z7AY<|S&e$7a8NEztD=aPPmsQ-t*f28zWa4P$X1r&#!-12*zN}^M$*LnA&trO z58R)x0#+H5u6X#8f6xFT8srRdKD#^B3J-sj%(9C~7uL&dHma%QOYD3kuOEy81_k<7 z5a>660*IGJvT|J4F1eDO+patSuh`_#&dZNIf&L zp~Oii13c$crQ&IiALU`#{Va&!CQ2x_G)cHm2K+Biw}mw_e}2Bi)eT9;RO>zt<-QapJlC3@1z8kRkD zR>vm1R}(Xpt`iFmGf)+ld0ER0k5Fg4VsK0qVf^6#cvdfUt#-KS=>mC*S`wiq_kXC! zQAUHK)Vx}VGjwa9H#h~m?2?Zm+3x{1hVA`_scVBA&}$R4!y@IX!s8Bd9>N9>bScG$Pd`L9!Nt#8~mf>x!fR%nm64>1)^Q^fb?VWHGJ7>_13I7W#~9v z{I-O7M~ePBOE4zuyRvGFa^Pp*a%?D;CzPL}P$1%%vPnEH&_S}6iwL&PV%#s?j76@< z8AMQxTqGRV1lU&zV{;M_fkl^$ui0ZWJfiSaWilxMIMGz+P>cNK%GMAQ&3%i2j?_ z7uL))xB-h|A1sn}Zto(hvZ@HZZ3vtx;^)MeZVUiCt;p&d@j8{yVyNUvDTH(DVR_)F z<_(_MeRPpoWSJ?gh9vtbn7eH<_W@l%Q(~z1V+<-7d{Atx>yCDZBGpt>;A(uQgK7 zHHfzt*qgd2$}EG3*o(^xE_}ppg@h*i$-TQYfHD4sbnX@eum7@TD?kYT_`cEIPsid8 zr^2ohgNI3i>F=!Tg7LQRvNbxV1@*j9CFpruib_I?W5qL#*g;8IIrlHqdJ-A?y?c&K|2P6nlcxce2Pz$1kPfxV8D(`{ zq;PzM@mFxk*>(S#Pq^-gpgVt@<)D5u#rlRELRljxEuKLX?@tHwK~#~2|DdFJth-md zWV{H7NCcXmGdi#KVDY7N5nLmbTDQc-L!p>Hw(A<33mBFYt9zr!udItT05h}p}X-5iZP~3 zLiPgh!oI5-Dd&Lyq0>E~y+WvKp-XKaPesyQxi*Zx#q-AbIDwdSeq6kpfBngCpmZGb7*o1;rX9!Gq=eXz&x3~k%Q67ehxbNhT~nwS~ulm;C6 zk=IKpmgXT8kfL_mRs6h4@Av%eQ-2FGBCzv+x-g2cy+{=_R?sWck0wq#80l&YkXR3}=rOlYM12Sk?;&SN^hN)_Q2=g_ znpri83gJjJ+hFlf9i^yz8&;TfJ1BG4H+n_sfZ{PJpOl<*oScl9(V!*d1-u~MTH}st zBd_-7R|d0|xSVEjTRgZMiOl#$Q|!MaUO_g3PDx7R@__OuPQYSwX1f z9Ym<@^3}e8vjudi_0(h{MfO^TW?keY9-`Dq&W6WyU9Vxh5{nx#*CEZo2HxP&TTF9j zXdokeI@S%Lb%^j$ggAqzlx9u*^n|=%(GojDs(^5BXjGUnI`@cskTo~Zw5D)@?Xqzb zRW7M&vVe3W2HpBl$ssNy{mXBl8{*h(X=#NF40ZvReJyEc>JrnG`r4LRmr^(9@~(ZCD@>{OSRK}#VQfft;*A=)^=|Bm@` z_fG`KPK=X%7PW!mq2t5DT!qg@y!>Bx_OA?y+)(qx9CFegF~M8yq7u#2Eku*{og9LO<8sgDd_)A2{?lUsx%H^B;Vww_17hlV%R~&FNu^1)ppGk8NtmT|9cA1S)t!) zMzYGiNL2@FT&c!$Q(aNC5}x^i*PeMf(czwM+qL5ocMK~3 zbF@TYHu?wbDj!*N3!bn4*G!2xx1d!wq2O;bB{hsP=6vZmE)J{&ia_o`kUZ@u=?OAh zl|vylc0oL!TB)Ti>#oklWAB1rbFzQ!2qFY|^9haxL@-(B=w||g^|z0ll$g9|jj& +
+
+ Loading... +
+ +
+ {{ error }} +
+ +
+

{{ post.title }}

+

{{ post.body }}

+
+
+ +``` + +```js +export default { + data() { + return { + loading: false, + post: null, + error: null + } + }, + created() { + // fetch the data when the view is created and the data is + // already being observed + this.fetchData() + }, + watch: { + // call again the method if the route changes + $route: 'fetchData' + }, + methods: { + fetchData() { + this.error = this.post = null + this.loading = true + // replace `getPost` with your data fetching util / API wrapper + getPost(this.$route.params.id, (err, post) => { + this.loading = false + if (err) { + this.error = err.toString() + } else { + this.post = post + } + }) + } + } +} +``` + +## Fetching Before Navigation + +With this approach we fetch the data before actually navigating to the new +route. We can perform the data fetching in the `beforeRouteEnter` guard in the incoming component, and only call `next` when the fetch is complete: + +```js +export default { + data() { + return { + post: null, + error: null + } + }, + beforeRouteEnter(to, from, next) { + getPost(to.params.id, (err, post) => { + next(vm => vm.setData(err, post)) + }) + }, + // when route changes and this component is already rendered, + // the logic will be slightly different. + beforeRouteUpdate(to, from, next) { + this.post = null + getPost(to.params.id, (err, post) => { + this.setData(err, post) + next() + }) + }, + methods: { + setData(err, post) { + if (err) { + this.error = err.toString() + } else { + this.post = post + } + } + } +} +``` + +The user will stay on the previous view while the resource is being fetched for the incoming view. It is therefore recommended to display a progress bar or some kind of indicator while the data is being fetched. If the data fetch fails, it's also necessary to display some kind of global warning message. + +### Using Composition API + +TODO: diff --git a/docs/guide/advanced/lazy-loading.md b/docs/guide/advanced/lazy-loading.md new file mode 100644 index 000000000..932217c56 --- /dev/null +++ b/docs/guide/advanced/lazy-loading.md @@ -0,0 +1,57 @@ +# Lazy Loading Routes + +When building apps with a bundler, the JavaScript bundle can become quite large, and thus affect the page load time. It would be more efficient if we can split each route's components into a separate chunk, and only load them when the route is visited. + + + +TODO: make it clear that this also works with other bundlers, not only with webpack + +Combining Vue's [async component feature](https://vuejs.org/guide/components.html#Async-Components) and webpack's [code splitting feature](https://webpack.js.org/guides/code-splitting-async/), it's trivially easy to lazy-load route components. + +First, an async component can be defined as a factory function that returns a Promise (which should resolve to the component itself): + +```js +const UserDetails = () => + Promise.resolve({ + /* component definition */ + }) +``` + +Second, in webpack 2, we can use the [dynamic import](https://github.com/tc39/proposal-dynamic-import) syntax to indicate a code-split point: + +```js +import('./UserDetails.vue') // returns a Promise +``` + +::: tip Note +if you are using Babel, you will need to add the [syntax-dynamic-import](https://babeljs.io/docs/plugins/syntax-dynamic-import/) plugin so that Babel can properly parse the syntax. +::: + +Combining the two, this is how to define an async component that will be automatically code-split by webpack: + +```js +const UserDetails = () => import('./UserDetails.vue') +``` + +Nothing needs to change in the route config, just use `UserDetails` as usual: + +```js +const router = createRouter({ + routes: [{ path: '/users/:id', component: UserDetails }] +}) +``` + +## Grouping Components in the Same Chunk + +Sometimes we may want to group all the components nested under the same route into the same async chunk. To achieve that we need to use [named chunks](https://webpack.js.org/guides/code-splitting-async/#chunk-names) by providing a chunk name using a special comment syntax (requires webpack > 2.4): + +```js +const UserDetails = () => + import(/* webpackChunkName: "group-user" */ './UserDetails.vue') +const UserDashboard = () => + import(/* webpackChunkName: "group-user" */ './UserDashboard.vue') +const UserProfileEdit = () => + import(/* webpackChunkName: "group-user" */ './UserProfileEdit.vue') +``` + +webpack will group any async module with the same chunk name into the same async chunk. diff --git a/docs/guide/advanced/meta.md b/docs/guide/advanced/meta.md new file mode 100644 index 000000000..6ef8d6a05 --- /dev/null +++ b/docs/guide/advanced/meta.md @@ -0,0 +1,56 @@ +# Route Meta Fields + +You can include a `meta` field when defining a route with any arbitrary information: + +```js +const routes = [ + { + path: '/posts', + component: PostsLayout, + children: [ + { + path: 'new', + component: PostsNew, + // only authenticated users can create posts + meta: { requiresAuth: true } + }, + { + path: ':id', + component: PostsDetail + // anybody can read a post + meta: { requiresAuth: false } + } + ] + } +] +``` + +So how do we access this `meta` field? + +First, each route object in the `routes` configuration is called a **route record**. Route records may be nested. Therefore when a route is matched, it can potentially match more than one route record. + +For example, with the above route config, the URL `/posts/new` will match both the parent route record (`path: '/posts'`) and the child route record (`path: 'new'`). + +All route records matched by a route are exposed on the `$route` object (and also route objects in navigation guards) as the `$route.matched` Array. We could loop through that array to check all `meta` fields, but Vue Router also provides you a `$route.meta` that is first-level merge of **all `meta`** fields from parent to child. Meaning you can simply write + +```js +router.beforeEach((to, from, next) => { + // instead of having to check every route record with + // to.matched.some(record => record.meta.requiresAuth) + if (to.meta.requiresAuth)) { + // this route requires auth, check if logged in + // if not, redirect to login page. + if (!auth.isLoggedIn()) { + next({ + path: '/login', + // save the location we were at to come back later + query: { redirect: to.fullPath } + }) + } else { + next() + } + } else { + next() // make sure to always call next()! + } +}) +``` diff --git a/docs/guide/advanced/navigation-failures.md b/docs/guide/advanced/navigation-failures.md new file mode 100644 index 000000000..1244c3913 --- /dev/null +++ b/docs/guide/advanced/navigation-failures.md @@ -0,0 +1,91 @@ +# Waiting for the result of a Navigation + +When using `router-link`, Vue Router calls `router.push` to trigger a navigation. While the expected behavior for most links is to navigate a user to a new page, there are a few situations where users will remain on the same page: + +- Users are already on the page that they are trying to navigate to. +- A [navigation guard](./navigation-guards.md) aborts the navigation by doing `return false`. +- A new navigation guard takes place while the previous one not finished. +- A [navigation guard](./navigation-guards.md) redirects somewhere else by returning a new location (e.g. `return '/login'`). +- A [navigation guard](./navigation-guards.md) throws an `Error`. + +If we want to do something after a navigation is finished, we need a way to wait after calling `router.push`. Imagine we have a mobile menu that allows us to go to different pages and we only want to hide the menu once we have navigated to the new page, we might want to do something like this: + +```js +router.push('/my-profile') +this.isMenuOpen = false +``` + +But this will close the menu right away because **navigations are asynchronous**, we need to `await` the promise returned by `router.push`: + +```js +await router.push('/my-profile') +this.isMenuOpen = false +``` + +Now the menu will close once the navigation is finished but it will also close if the navigation was prevented. We need a way to detect if we actually changed the page we are one or not. + +## Detecting Navigation Failures + +If a navigation is prevented, resulting in the user staying on the same page, the resolved value of the `Promise` returned by `router.push` will be a _Navigation Failure_. Otherwise, it will be a _falsy_ value (usually `undefined`). This allows us to differentiate the case where we navigated away from where we are or not: + +```js +const navigationResult = await router.push('/my-profile') + +if (navigationResult) { + // navigation prevented +} else { + // navigation succeeded (this includes the case of a redirection) + this.isMenuOpen = false +} +``` + +_Navigation Failures_ are `Error` instances with a few extra properties that gives us enough information to know what navigation was prevented and why. To check the nature of a navigation result, use the `isNavigationFailure` function: + +```js +import { NavigationFailureType, isNavigationFailure } from 'vue-router' + +// trying to leave the editing page of an article without saving +const failure = await router.push('/articles/2') + if (isNavigationFailure(failure, NavigationFailureType.aborted)) { + // show a small notification to the user + showToast('You have unsaved changes, discard and leave anyway?') + } +}) +``` + +::: tip +If you omit the second parameter: `isNavigationFailure(failure)`, it will only check if `failure` is a _Navigation Failure_. +::: + +## Differentiating Navigation Failures + +As we said at the beginning, there are different situations aborting a navigation, all of them resulting in different _Navigation Failures_. They can be differentiated using the `isNavigationFailure` and `NavigationFailureType`. There are four different types: + +- `aborted`: `false` was returned inside of a navigation guard to the navigation. +- `cancelled`: A new navigation took place before the current navigation could finish. e.g. `router.push` was called while waiting inside of a navigation guard. +- `duplicated`: The navigation was prevented because we are already at the target location. + +## _Navigation Failures_'s properties + +All navigation failures expose `to` and `from` properties to reflect the current location as well as the target location for the navigation that failed: + +```js +// trying to access the admin page +router.push('/admin').catch(failure => { + if (isNavigationFailure(failure, NavigationFailureType.redirected)) { + failure.to.path // '/admin' + failure.from.path // '/' + } +}) +``` + +In all cases, `to` and `from` are normalized route locations. + +## Detecting Redirections + +When returning a new location inside of a Navigation Guard, we are triggering a new navigation that overrides the ongoing one. Differently from other return values, a redirection doesn't prevent a navigation, **it creates a new one**. It is therefore checked differently, by reading the `redirectedFrom` property in a Route Location: + +```js +await router.push('/my-profile') +if (router) +``` diff --git a/docs/guide/advanced/navigation-guards.md b/docs/guide/advanced/navigation-guards.md new file mode 100644 index 000000000..7b6446d52 --- /dev/null +++ b/docs/guide/advanced/navigation-guards.md @@ -0,0 +1,195 @@ +# Navigation Guards + +As the name suggests, the navigation guards provided by Vue router are primarily used to guard navigations either by redirecting it or canceling it. There are a number of ways to hook into the route navigation process: globally, per-route, or in-component. + +## Global Before Guards + +You can register global before guards using `router.beforeEach`: + +```js +const router = createRouter({ ... }) + +router.beforeEach((to, from, next) => { + // ... + next() +}) +``` + +Global before guards are called in creation order, whenever a navigation is triggered. Guards may be resolved asynchronously, and the navigation is considered **pending** before all hooks have been resolved. + +Every guard function receives three arguments: + +- **`to`**: the target [Normalized RouteLocation](../../api/#the-route-object) being navigated to. + +- **`from`**: the current route location (same type as `to`) being navigated away from. + +- **`next`**: a function that **must be called to resolve** the hook. The action depends on the arguments provided to `next`: + + - **`next()`**: move on to the next hook in the pipeline. If no hooks are left, the navigation is **validated**. + + - **`next(false)`**: cancel the current navigation. If the browser URL was changed (either manually by the user or via back button), it will be reset to that of the `from` route. + + - **`next('/')` or `next({ path: '/' })`**: redirect to a different location. The current navigation will be dropped and a new one will be initiated. **You can pass any route location object** to `next`, which allows you to specify options like `replace: true`, `name: 'home'` and any option used in [`router-link`'s `to` prop](../../api/#to) or [`router.push`](../../api/#router-push) + + - **`next(error)`**: (2.4.0+) if the argument passed to `next` is an instance of `Error`, the navigation will be canceled and the error will be passed to callbacks registered via [`router.onError()`](../../api/#router-onerror). The same happens if an error is directly thrown. + +::: tip Note +For all guards, **make sure that the `next` function is called exactly once** in any given pass through the navigation guard. It can appear more than once, but only if the logical paths have no overlap, otherwise the hook will never be resolved or produce errors. Here is an example of redirecting to user to `/login` if they are not authenticated: + +```js +// BAD +router.beforeEach((to, from, next) => { + if (to.name !== 'Login' && !isAuthenticated) next({ name: 'Login' }) + // if the user is not authenticated, `next` is called twice + next() +}) +``` + +```js +// GOOD +router.beforeEach((to, from, next) => { + if (to.name !== 'Login' && !isAuthenticated) next({ name: 'Login' }) + else next() +}) +``` + +::: + +## Global Resolve Guards + +You can register a global guard with `router.beforeResolve`. This is similar to `router.beforeEach` because it triggers on **every navigation**, but resolve guards are called right before the navigation is confirmed, **after all in-component guards and async route components are resolved**. This is the ideal spot to fetch data or do any other operation that you want to avoid doing if the user cannot enter a page. It's also very easy to combine with [`meta` fields](./meta.md) to create a [generic fetching mechanism](../../cookbook/generic-data-fetching.md): + +```js +router.beforeResolve(async (to, from, next) => { + if (to.meta.requiresCamera) { + try { + await askForCameraPermission() + next() + } catch (error) { + if (error instanceof NotAllowedError) { + // ... handle the error and then cancel the navigation + next(false) + } else { + // unexpected error, cancel the navigation and pass the error to the global handler + next(error) + } + } + } else { + // make sure to always call `next` + next() + } +}) +``` + +## Global After Hooks + +You can also register global after hooks, however unlike guards, these hooks do not get a `next` function and cannot affect the navigation: + +```js +router.afterEach((to, from) => { + sendToAnalytics(to.fullPath) +}) +``` + +They are useful for analytics, [changing the title of the page](../../cookbook/page-title.md), [accessibility](../../cookbook/announcing-navigation.md) and many other things. + +## Per-Route Guard + +You can define `beforeEnter` guards directly on a route's configuration object: + +```js +const routes = [ + { + path: '/users/:id', + component: UserDetails, + beforeEnter: (to, from, next) => { + // ... + next() + } + } +] +``` + +`beforeEnter` guards **only trigger when entering the route**, they don't trigger when the `params`, `query` or `hash` change e.g. going from `/users/2` to `/users/3` or going from `/users/2#info` to `/users/2#projects`. They are only triggered when navigating **from a different** route. + +## In-Component Guards + +Finally, you can directly define route navigation guards inside route components (the ones passed to the router configuration) with the following options: + +- `beforeRouteEnter` +- `beforeRouteUpdate` +- `beforeRouteLeave` + +```js +const UserDetails = { + template: `...`, + beforeRouteEnter(to, from, next) { + // called before the route that renders this component is confirmed. + // does NOT have access to `this` component instance, + // because it has not been created yet when this guard is called! + }, + beforeRouteUpdate(to, from, next) { + // called when the route that renders this component has changed, + // but this component is reused in the new route. + // For example, given a route with params `/users/:id`, when we + // navigate between `/users/1` and `/users/2`, the same `UserDetails` component instance + // will be reused, and this hook will be called when that happens. + // Because the component is mounted while this happens, the navigation guard has access to `this` component instance. + }, + beforeRouteLeave(to, from, next) { + // called when the route that renders this component is about to + // be navigated away from. + // As with `beforeRouteUpdate`, it has access to `this` component instance. + } +} +``` + +The `beforeRouteEnter` guard does **NOT** have access to `this`, because the guard is called before the navigation is confirmed, thus the new entering component has not even been created yet. + +However, you can access the instance by passing a callback to `next`. The callback will be called when the navigation is confirmed, and the component instance will be passed to the callback as the argument: + +```js +beforeRouteEnter (to, from, next) { + next(vm => { + // access to component public instance via `vm` + }) +} +``` + +Note that `beforeRouteEnter` is the only guard that supports passing a callback to `next`. For `beforeRouteUpdate` and `beforeRouteLeave`, `this` is already available, so passing a callback is unnecessary and therefore _not supported_: + +```js +beforeRouteUpdate (to, from, next) { + // just use `this` + this.name = to.params.name + next() +} +``` + +The **leave guard** is usually used to prevent the user from accidentally leaving the route with unsaved edits. The navigation can be canceled by calling `next(false)`. + +```js +beforeRouteLeave (to, from, next) { + const answer = window.confirm('Do you really want to leave? you have unsaved changes!') + if (answer) { + next() + } else { + next(false) + } +} +``` + +## The Full Navigation Resolution Flow + +1. Navigation triggered. +2. Call `beforeRouteLeave` guards in deactivated components. +3. Call global `beforeEach` guards. +4. Call `beforeRouteUpdate` guards in reused components. +5. Call `beforeEnter` in route configs. +6. Resolve async route components. +7. Call `beforeRouteEnter` in activated components. +8. Call global `beforeResolve` guards. +9. Navigation is confirmed. +10. Call global `afterEach` hooks. +11. DOM updates triggered. +12. Call callbacks passed to `next` in `beforeRouteEnter` guards with instantiated instances. diff --git a/docs/guide/advanced/scroll-behavior.md b/docs/guide/advanced/scroll-behavior.md new file mode 100644 index 000000000..148247e04 --- /dev/null +++ b/docs/guide/advanced/scroll-behavior.md @@ -0,0 +1,107 @@ +# Scroll Behavior + +When using client-side routing, we may want to scroll to top when navigating to a new route, or preserve the scrolling position of history entries just like real page reload does. Vue Router allows you to achieve these and even better, allows you to completely customize the scroll behavior on route navigation. + +**Note: this feature only works if the browser supports `history.pushState`.** + +When creating the router instance, you can provide the `scrollBehavior` function: + +```js +const router = createRouter({ + history: createWebHashHistory(), + routes: [...], + scrollBehavior (to, from, savedPosition) { + // return desired position + } +}) +``` + +The `scrollBehavior` function receives the `to` and `from` route objects, like [Navigation Guards](./navigation-guards.md). The third argument, `savedPosition`, is only available if this is a `popstate` navigation (triggered by the browser's back/forward buttons). + +The function can return a [`ScrollToOptions`](https://developer.mozilla.org/en-US/docs/Web/API/ScrollToOptions) position object: + +```js +const router = createRouter({ + scrollBehavior(to, from, savedPosition) { + // always scroll to top + return { top: 0 } + } +}) +``` + +You can also pass a CSS selector or a DOM element via `el`. In that scenario, `top` and `left` will be treated as relative offsets to that element. + +```js +const router = createRouter({ + scrollBehavior (to, from, savedPosition) { + // always scroll 10px above the element #main + el: '#main', + // could also be + // el: document.getElementById('main'), + return { top: -10 } + } +}) +``` + +If a falsy value or an empty object is returned, no scrolling will happen. + +Returning the `savedPosition` will result in a native-like behavior when navigating with back/forward buttons: + +```js +const router = createRouter({ + scrollBehavior(to, from, savedPosition) { + if (savedPosition) { + return savedPosition + } else { + return { top: 0 } + } + } +}) +``` + +If you want to simulate the "scroll to anchor" behavior: + +```js +const router = createRouter({ + scrollBehavior(to, from, savedPosition) { + if (to.hash) { + return { + el: to.hash + } + } + } +}) +``` + +If your browser supports [scroll behavior](https://developer.mozilla.org/en-US/docs/Web/API/ScrollToOptions/behavior), you can make it smooth: + +```js +const router = createRouter({ + scrollBehavior(to, from, savedPosition) { + if (to.hash) { + return { + el: to.hash + behavior: 'smooth', + } + } + } +}) +``` + +## Delaying the scroll + +Sometimes we need to wait a bit before scrolling in the page. For example, when dealing with transitions, we want to wait for the transition to finish before scrolling. To do this you can return a Promise that returns the desired position descriptor. Here is an example where we wait 500ms before scrolling: + +```js +const router = createRouter({ + scrollBehavior(to, from, savedPosition) { + return new Promise((resolve, reject) => { + setTimeout(() => { + resolve({ left: 0, top: 0 }) + }, 500) + }) + } +}) +``` + +It's possible to hook this up with events from a page-level transition component to make the scroll behavior play nicely with your page transitions, but due to the possible variance and complexity in use cases, we simply provide this primitive to enable specific userland implementations. diff --git a/docs/guide/advanced/transitions.md b/docs/guide/advanced/transitions.md new file mode 100644 index 000000000..ed4d68282 --- /dev/null +++ b/docs/guide/advanced/transitions.md @@ -0,0 +1,60 @@ +# Transitions + +TODO: redo this page once it's good to use in Vue router + +Since the `` is essentially a dynamic component, we can apply transition effects to it the same way using the `` component: + +```html + + + +``` + +[All transition APIs](https://vuejs.org/guide/transitions.html) work the same here. + +## Per-Route Transition + +The above usage will apply the same transition for all routes. If you want each route's component to have different transitions, you can instead use `` with different names inside each route component: + +```js +const Foo = { + template: ` + +
...
+
+ ` +} + +const Bar = { + template: ` + +
...
+
+ ` +} +``` + +## Route-Based Dynamic Transition + +It is also possible to determine the transition to use dynamically based on the relationship between the target route and current route: + +```html + + + + +``` + +```js +// then, in the parent component, +// watch the `$route` to determine the transition to use +watch: { + '$route' (to, from) { + const toDepth = to.path.split('/').length + const fromDepth = from.path.split('/').length + this.transitionName = toDepth < fromDepth ? 'slide-right' : 'slide-left' + } +} +``` + +See full example [here](https://github.com/vuejs/vue-router/blob/dev/examples/transitions/app.js). diff --git a/docs/guide/essentials/dynamic-matching.md b/docs/guide/essentials/dynamic-matching.md new file mode 100644 index 000000000..bd65d39dc --- /dev/null +++ b/docs/guide/essentials/dynamic-matching.md @@ -0,0 +1,88 @@ +# Dynamic Route Matching with Params + +Very often we will need to map routes with the given pattern to the same component. For example we may have a `User` component which should be rendered for all users but with different user IDs. In Vue Router we can use a dynamic segment in the path to achieve that, we call that a _param_: + +```js +const User = { + template: '
User
' +} + +// these are passed to `createRouter` +const routes = [ + // dynamic segments start with a colon + { path: '/user/:id', component: User } +] +``` + +Now URLs like `/user/johnny` and `/user/jolyne` will both map to the same route. + +A _param_ is denoted by a colon `:`. When a route is matched, the value of its _params_ will be exposed as `this.$route.params` in every component. Therefore, we can render the current user ID by updating `User`'s template to this: + +```js +const User = { + template: '
User {{ $route.params.id }}
' +} +``` + + + +You can check out a live example [here](https://jsfiddle.net/yyx990803/4xfa2f19/). + +You can have multiple _params_ in the same route, and they will map to corresponding fields on `$route.params`. Examples: + +| pattern | matched path | \$route.params | +| ---------------------------- | ---------------------- | ---------------------------------------- | +| /user/:username | /user/eduardo | `{ username: 'eduardo' }` | +| /user/:username/post/:postId | /user/eduardo/post/123 | `{ username: 'eduardo', postId: '123' }` | + +In addition to `$route.params`, the `$route` object also exposes other useful information such as `$route.query` (if there is a query in the URL), `$route.hash`, etc. You can check out the full details in the [API Reference](../../api/#the-route-object). + +## Reacting to Params Changes + +One thing to note when using routes with params is that when the user navigates from `/user/johnny` to `/user/jolyne`, **the same component instance will be reused**. Since both routes render the same component, this is more efficient than destroying the old instance and then creating a new one. **However, this also means that the lifecycle hooks of the component will not be called**. + +To react to params changes in the same component, you can simply watch the `$route` object: + +```js +const User = { + template: '...', + watch: { + $route(to, from) { + // react to route changes... + } + } +} +``` + +Or, use the `beforeRouteUpdate` [navigation guard](../advanced/navigation-guards.html), which also allows to cancel the navigation: + +```js +const User = { + template: '...', + beforeRouteUpdate(to, from, next) { + // react to route changes... + // don't forget to call next() + } +} +``` + +## Catch all / 404 Not found Route + +Regular params will only match characters in between url fragments, separated by `/`. If we want to match **anything**, we can use a custom _param_ regexp by adding the regexp inside parentheses right after the _param_: + +```js +{ + // will match everything and put it under `$route.params.pathMatch` + path: '/:pathMatch(.*)' +} +{ + // will match anything starting with `/user-` and put it under `$route.params.afterUser` + path: '/user-:afterUser(.*)' +} +``` + +If you are using [History mode](./history-mode.md), make sure to follow the instructions to correctly configure your server as well. + +## Advanced Matching Patterns + +Vue Router uses its own path matching, inspired to the one used by `express`, so it supports many advanced matching patterns such as optional params, zero or more / one or more requirements, and even custom regex patterns. Please check the [Advanced Matching](../advanced/advanced-matching.md) documentation to explore them. diff --git a/docs/guide/essentials/history-mode.md b/docs/guide/essentials/history-mode.md new file mode 100644 index 000000000..2d1ed5dae --- /dev/null +++ b/docs/guide/essentials/history-mode.md @@ -0,0 +1,163 @@ +# Different History modes + +The `history` option when creating the router instance allows us to choose among different history modes. + +## Hash Mode + +The hash history mode is created with `createWebHashHistory()`: + +```js +import { createRouter, createWebHashHistory } from 'vue-router' + +const router = createRouter({ + history: createWebHashHistory(), + routes: [ + //... + ], +}) +``` + +It uses a hash character (`#`) before the actual URL that is internally passed. Because this section of the URL is never sent to the server, it doesn't require any special treatment on the server level. **It does however have a bad impact in SEO**. If that's a concern for you, use the HTML5 history mode. + +## HTML5 Mode + +The HTML5 mode is created with `cerateWebHistory()` and is the recommend mode: + +```js +import { createRouter, createWebHistory } from 'vue-router' + +const router = createRouter({ + history: createWebHistory(), + routes: [ + //... + ], +}) +``` + +When using history mode, the URL will look "normal," e.g. `https://example.com/user/id`. Beautiful! + +Here comes a problem, though: Since our app is a single page client side app, without a proper server configuration, the users will get a 404 error if they access `https://example.com/user/id` directly in their browser. Now that's ugly. + +Not to worry: To fix the issue, all you need to do is add a simple catch-all fallback route to your server. If the URL doesn't match any static assets, it should serve the same `index.html` page that your app lives in. Beautiful, again! + +## Example Server Configurations + +**Note**: The following examples assume you are serving your app from the root folder. If you deploy to a subfolder, you should use [the `publicPath` option of Vue CLI](https://cli.vuejs.org/config/#publicpath) and the related [`base` property of the router](https://router.vuejs.org/api/#base). You also need to adjust the examples below to use the subfolder instead of the root folder (e.g. replacing `RewriteBase /` with `RewriteBase /name-of-your-subfolder/`). + +### Apache + +```apacheconf + + RewriteEngine On + RewriteBase / + RewriteRule ^index\.html$ - [L] + RewriteCond %{REQUEST_FILENAME} !-f + RewriteCond %{REQUEST_FILENAME} !-d + RewriteRule . /index.html [L] + +``` + +Instead of `mod_rewrite`, you could also use [`FallbackResource`](https://httpd.apache.org/docs/2.2/mod/mod_dir.html#fallbackresource). + +### nginx + +```nginx +location / { + try_files $uri $uri/ /index.html; +} +``` + +### Native Node.js + +```js +const http = require('http') +const fs = require('fs') +const httpPort = 80 + +http + .createServer((req, res) => { + fs.readFile('index.htm', 'utf-8', (err, content) => { + if (err) { + console.log('We cannot open "index.htm" file.') + } + + res.writeHead(200, { + 'Content-Type': 'text/html; charset=utf-8', + }) + + res.end(content) + }) + }) + .listen(httpPort, () => { + console.log('Server listening on: http://localhost:%s', httpPort) + }) +``` + +### Express with Node.js + +For Node.js/Express, consider using [connect-history-api-fallback middleware](https://github.com/bripkens/connect-history-api-fallback). + +### Internet Information Services (IIS) + +1. Install [IIS UrlRewrite](https://www.iis.net/downloads/microsoft/url-rewrite) +2. Create a `web.config` file in the root directory of your site with the following: + +```xml + + + + + + + + + + + + + + + + + +``` + +### Caddy + +``` +rewrite { + regexp .* + to {path} / +} +``` + +### Firebase hosting + +Add this to your `firebase.json`: + +```json +{ + "hosting": { + "public": "dist", + "rewrites": [ + { + "source": "**", + "destination": "/index.html" + } + ] + } +} +``` + +## Caveat + +There is a caveat to this: Your server will no longer report 404 errors as all not-found paths now serve up your `index.html` file. To get around the issue, you should implement a catch-all route within your Vue app to show a 404 page: + +```js +const router = createRouter({ + history: createWebHistory(), + routes: [{ path: '/:pathMatch(.*)', component: NotFoundComponent }], +}) +``` + +Alternatively, if you are using a Node.js server, you can implement the fallback by using the router on the server side to match the incoming URL and respond with 404 if no route is matched. Check out the [Vue server side rendering documentation](https://ssr.vuejs.org/en/) for more information. diff --git a/docs/guide/essentials/named-routes.md b/docs/guide/essentials/named-routes.md new file mode 100644 index 000000000..b02a93a82 --- /dev/null +++ b/docs/guide/essentials/named-routes.md @@ -0,0 +1,36 @@ +# Named Routes + +Alongside the `path`, you can provide a `name` to any route. This has the following advantages: + +- No hardcoded URLs +- Automatic encoding/decoding of `params` +- Prevents you from having a typo in the url +- Bypassing path ranking (e.g. to display a ) + +```js +const routes = [ + { + path: '/user/:username', + name: 'user', + component: User + } +] +``` + +To link to a named route, you can pass an object to the `router-link` component's `to` prop: + +```html + + User + +``` + +This is the exact same object used programmatically with `router.push()`: + +```js +router.push({ name: 'user', params: { username: 'erina' } }) +``` + +In both cases, the router will navigate to the path `/user/erina`. + +Full example [here](https://github.com/vuejs/vue-router/blob/dev/examples/named-routes/app.js). diff --git a/docs/guide/essentials/named-views.md b/docs/guide/essentials/named-views.md new file mode 100644 index 000000000..0d8c76a25 --- /dev/null +++ b/docs/guide/essentials/named-views.md @@ -0,0 +1,89 @@ +# Named Views + +Sometimes you need to display multiple views at the same time instead of nesting them, e.g. creating a layout with a `sidebar` view and a `main` view. This is where named views come in handy. Instead of having one single outlet in your view, you can have multiple and give each of them a name. A `router-view` without a name will be given `default` as its name. + +```html + + + +``` + +A view is rendered by using a component, therefore multiple views require +multiple components for the same route. Make sure to use the `components` (with +an **s**) option: + +```js +const router = createRouter({ + history: createWebHashHistory(), + routes: [ + { + path: '/', + components: { + default: Home, + a: LeftSidebar, + b: RightSidebar, + }, + }, + ], +}) +``` + + + +A working demo of this example can be found [here](https://jsfiddle.net/posva/6du90epg/). + +## Nested Named Views + +It is possible to create complex layouts using named views with nested views. When doing so, you will also need to give nested `router-view` a name. Let's take a Settings panel example: + +``` +/settings/emails /settings/profile ++-----------------------------------+ +------------------------------+ +| UserSettings | | UserSettings | +| +-----+-------------------------+ | | +-----+--------------------+ | +| | Nav | UserEmailsSubscriptions | | +------------> | | Nav | UserProfile | | +| | +-------------------------+ | | | +--------------------+ | +| | | | | | | | UserProfilePreview | | +| +-----+-------------------------+ | | +-----+--------------------+ | ++-----------------------------------+ +------------------------------+ +``` + +- `Nav` is just a regular component +- `UserSettings` is the parent view component +- `UserEmailsSubscriptions`, `UserProfile`, `UserProfilePreview` are nested view components + +**Note**: _Let's forget about how the HTML/CSS should look like to represent such layout and focus on the components used._ + +The `