gitextract_7kypz9ur/ ├── .babelrc ├── .circleci/ │ └── config.yml ├── .eslintignore ├── .eslintrc ├── .flowconfig ├── .github/ │ ├── ISSUE_TEMPLATE.md │ ├── PULL_REQUEST_TEMPLATE.md │ ├── funding.yml │ └── workflows/ │ └── release-tag.yml ├── .gitignore ├── .prettierrc ├── CHANGELOG.md ├── LICENSE ├── README.md ├── build/ │ ├── build.js │ ├── configs.js │ └── rollup.dev.config.js ├── composables.d.ts ├── composables.js ├── composables.mjs ├── dist/ │ ├── vue-router.common.js │ ├── vue-router.esm.browser.js │ ├── vue-router.esm.js │ ├── vue-router.js │ └── vue-router.mjs ├── docs/ │ ├── .vuepress/ │ │ ├── components/ │ │ │ ├── HomeSponsors.vue │ │ │ ├── HomeSponsorsGroup.vue │ │ │ └── sponsors.json │ │ ├── config.js │ │ ├── public/ │ │ │ └── _redirects │ │ ├── styles/ │ │ │ └── index.styl │ │ └── theme/ │ │ ├── Layout.vue │ │ ├── components/ │ │ │ ├── BuySellAds.vue │ │ │ ├── CarbonAds.vue │ │ │ └── VueSchool/ │ │ │ └── BannerTop.vue │ │ └── index.js │ ├── README.md │ ├── api/ │ │ └── README.md │ ├── fr/ │ │ ├── README.md │ │ ├── api/ │ │ │ └── README.md │ │ ├── guide/ │ │ │ ├── README.md │ │ │ ├── advanced/ │ │ │ │ ├── data-fetching.md │ │ │ │ ├── lazy-loading.md │ │ │ │ ├── meta.md │ │ │ │ ├── navigation-guards.md │ │ │ │ ├── scroll-behavior.md │ │ │ │ └── transitions.md │ │ │ └── essentials/ │ │ │ ├── dynamic-matching.md │ │ │ ├── history-mode.md │ │ │ ├── named-routes.md │ │ │ ├── named-views.md │ │ │ ├── navigation.md │ │ │ ├── nested-routes.md │ │ │ ├── passing-props.md │ │ │ └── redirect-and-alias.md │ │ └── installation.md │ ├── guide/ │ │ ├── README.md │ │ ├── advanced/ │ │ │ ├── data-fetching.md │ │ │ ├── lazy-loading.md │ │ │ ├── meta.md │ │ │ ├── navigation-failures.md │ │ │ ├── navigation-guards.md │ │ │ ├── scroll-behavior.md │ │ │ └── transitions.md │ │ └── essentials/ │ │ ├── dynamic-matching.md │ │ ├── history-mode.md │ │ ├── named-routes.md │ │ ├── named-views.md │ │ ├── navigation.md │ │ ├── nested-routes.md │ │ ├── passing-props.md │ │ └── redirect-and-alias.md │ ├── installation.md │ ├── ja/ │ │ ├── README.md │ │ ├── api/ │ │ │ └── README.md │ │ ├── guide/ │ │ │ ├── README.md │ │ │ ├── advanced/ │ │ │ │ ├── data-fetching.md │ │ │ │ ├── lazy-loading.md │ │ │ │ ├── meta.md │ │ │ │ ├── navigation-failures.md │ │ │ │ ├── navigation-guards.md │ │ │ │ ├── scroll-behavior.md │ │ │ │ └── transitions.md │ │ │ └── essentials/ │ │ │ ├── dynamic-matching.md │ │ │ ├── history-mode.md │ │ │ ├── named-routes.md │ │ │ ├── named-views.md │ │ │ ├── navigation.md │ │ │ ├── nested-routes.md │ │ │ ├── passing-props.md │ │ │ └── redirect-and-alias.md │ │ └── installation.md │ ├── kr/ │ │ ├── README.md │ │ ├── api/ │ │ │ └── README.md │ │ ├── guide/ │ │ │ ├── README.md │ │ │ ├── advanced/ │ │ │ │ ├── data-fetching.md │ │ │ │ ├── lazy-loading.md │ │ │ │ ├── meta.md │ │ │ │ ├── navigation-guards.md │ │ │ │ ├── scroll-behavior.md │ │ │ │ └── transitions.md │ │ │ └── essentials/ │ │ │ ├── dynamic-matching.md │ │ │ ├── getting-started.md │ │ │ ├── history-mode.md │ │ │ ├── named-routes.md │ │ │ ├── named-views.md │ │ │ ├── navigation.md │ │ │ ├── nested-routes.md │ │ │ ├── passing-props.md │ │ │ └── redirect-and-alias.md │ │ └── installation.md │ ├── ru/ │ │ ├── README.md │ │ ├── api/ │ │ │ └── README.md │ │ ├── guide/ │ │ │ ├── README.md │ │ │ ├── advanced/ │ │ │ │ ├── data-fetching.md │ │ │ │ ├── lazy-loading.md │ │ │ │ ├── meta.md │ │ │ │ ├── navigation-failures.md │ │ │ │ ├── navigation-guards.md │ │ │ │ ├── scroll-behavior.md │ │ │ │ └── transitions.md │ │ │ └── essentials/ │ │ │ ├── dynamic-matching.md │ │ │ ├── history-mode.md │ │ │ ├── named-routes.md │ │ │ ├── named-views.md │ │ │ ├── navigation.md │ │ │ ├── nested-routes.md │ │ │ ├── passing-props.md │ │ │ └── redirect-and-alias.md │ │ └── installation.md │ └── zh/ │ ├── README.md │ ├── api/ │ │ └── README.md │ ├── guide/ │ │ ├── README.md │ │ ├── advanced/ │ │ │ ├── data-fetching.md │ │ │ ├── lazy-loading.md │ │ │ ├── meta.md │ │ │ ├── navigation-failures.md │ │ │ ├── navigation-guards.md │ │ │ ├── scroll-behavior.md │ │ │ └── transitions.md │ │ └── essentials/ │ │ ├── dynamic-matching.md │ │ ├── history-mode.md │ │ ├── named-routes.md │ │ ├── named-views.md │ │ ├── navigation.md │ │ ├── nested-routes.md │ │ ├── passing-props.md │ │ └── redirect-and-alias.md │ └── installation.md ├── docs-gitbook/ │ ├── LANGS.md │ ├── assets/ │ │ ├── CNAME │ │ └── circle.yml │ ├── book.json │ ├── de/ │ │ ├── SUMMARY.md │ │ ├── advanced/ │ │ │ ├── data-fetching.md │ │ │ ├── lazy-loading.md │ │ │ ├── meta.md │ │ │ ├── navigation-guards.md │ │ │ ├── scroll-behavior.md │ │ │ └── transitions.md │ │ ├── api/ │ │ │ ├── component-injections.md │ │ │ ├── options.md │ │ │ ├── route-object.md │ │ │ ├── router-instance.md │ │ │ ├── router-link.md │ │ │ └── router-view.md │ │ ├── essentials/ │ │ │ ├── dynamic-matching.md │ │ │ ├── getting-started.md │ │ │ ├── history-mode.md │ │ │ ├── named-routes.md │ │ │ ├── named-views.md │ │ │ ├── navigation.md │ │ │ ├── nested-routes.md │ │ │ └── redirect-and-alias.md │ │ └── installation.md │ ├── es/ │ │ ├── README.md │ │ ├── SUMMARY.md │ │ ├── advanced/ │ │ │ ├── data-fetching.md │ │ │ ├── lazy-loading.md │ │ │ ├── meta.md │ │ │ ├── navigation-guards.md │ │ │ ├── scroll-behavior.md │ │ │ └── transitions.md │ │ ├── api/ │ │ │ ├── component-injections.md │ │ │ ├── options.md │ │ │ ├── route-object.md │ │ │ ├── router-instance.md │ │ │ ├── router-link.md │ │ │ └── router-view.md │ │ ├── essentials/ │ │ │ ├── dynamic-matching.md │ │ │ ├── getting-started.md │ │ │ ├── history-mode.md │ │ │ ├── named-routes.md │ │ │ ├── named-views.md │ │ │ ├── navigation.md │ │ │ ├── nested-routes.md │ │ │ ├── passing-props.md │ │ │ └── redirect-and-alias.md │ │ └── installation.md │ ├── fr/ │ │ ├── README.md │ │ ├── SUMMARY.md │ │ ├── advanced/ │ │ │ ├── data-fetching.md │ │ │ ├── lazy-loading.md │ │ │ ├── meta.md │ │ │ ├── navigation-guards.md │ │ │ ├── scroll-behavior.md │ │ │ └── transitions.md │ │ ├── api/ │ │ │ ├── component-injections.md │ │ │ ├── options.md │ │ │ ├── route-object.md │ │ │ ├── router-instance.md │ │ │ ├── router-link.md │ │ │ └── router-view.md │ │ ├── essentials/ │ │ │ ├── dynamic-matching.md │ │ │ ├── getting-started.md │ │ │ ├── history-mode.md │ │ │ ├── named-routes.md │ │ │ ├── named-views.md │ │ │ ├── navigation.md │ │ │ ├── nested-routes.md │ │ │ ├── passing-props.md │ │ │ └── redirect-and-alias.md │ │ └── installation.md │ ├── ja/ │ │ ├── README.md │ │ ├── SUMMARY.md │ │ ├── advanced/ │ │ │ ├── data-fetching.md │ │ │ ├── lazy-loading.md │ │ │ ├── meta.md │ │ │ ├── navigation-guards.md │ │ │ ├── scroll-behavior.md │ │ │ └── transitions.md │ │ ├── api/ │ │ │ ├── component-injections.md │ │ │ ├── options.md │ │ │ ├── route-object.md │ │ │ ├── router-instance.md │ │ │ ├── router-link.md │ │ │ └── router-view.md │ │ ├── essentials/ │ │ │ ├── dynamic-matching.md │ │ │ ├── getting-started.md │ │ │ ├── history-mode.md │ │ │ ├── named-routes.md │ │ │ ├── named-views.md │ │ │ ├── navigation.md │ │ │ ├── nested-routes.md │ │ │ ├── passing-props.md │ │ │ └── redirect-and-alias.md │ │ └── installation.md │ ├── kr/ │ │ ├── README.md │ │ ├── SUMMARY.md │ │ ├── advanced/ │ │ │ ├── data-fetching.md │ │ │ ├── lazy-loading.md │ │ │ ├── meta.md │ │ │ ├── navigation-guards.md │ │ │ ├── scroll-behavior.md │ │ │ └── transitions.md │ │ ├── api/ │ │ │ ├── component-injections.md │ │ │ ├── options.md │ │ │ ├── route-object.md │ │ │ ├── router-instance.md │ │ │ ├── router-link.md │ │ │ └── router-view.md │ │ ├── essentials/ │ │ │ ├── dynamic-matching.md │ │ │ ├── getting-started.md │ │ │ ├── history-mode.md │ │ │ ├── named-routes.md │ │ │ ├── named-views.md │ │ │ ├── navigation.md │ │ │ ├── nested-routes.md │ │ │ ├── passing-props.md │ │ │ └── redirect-and-alias.md │ │ └── installation.md │ ├── old/ │ │ ├── README.md │ │ └── SUMMARY.md │ └── ru/ │ ├── README.md │ ├── SUMMARY.md │ ├── advanced/ │ │ ├── data-fetching.md │ │ ├── lazy-loading.md │ │ ├── meta.md │ │ ├── navigation-guards.md │ │ ├── scroll-behavior.md │ │ └── transitions.md │ ├── api/ │ │ ├── component-injections.md │ │ ├── options.md │ │ ├── route-object.md │ │ ├── router-instance.md │ │ ├── router-link.md │ │ └── router-view.md │ ├── essentials/ │ │ ├── dynamic-matching.md │ │ ├── getting-started.md │ │ ├── history-mode.md │ │ ├── named-routes.md │ │ ├── named-views.md │ │ ├── navigation.md │ │ ├── nested-routes.md │ │ ├── passing-props.md │ │ └── redirect-and-alias.md │ └── installation.md ├── examples/ │ ├── active-links/ │ │ ├── app.js │ │ └── index.html │ ├── auth-flow/ │ │ ├── app.js │ │ ├── auth.js │ │ ├── components/ │ │ │ ├── About.vue │ │ │ ├── App.vue │ │ │ ├── Dashboard.vue │ │ │ └── Login.vue │ │ └── index.html │ ├── basic/ │ │ ├── app.js │ │ └── index.html │ ├── composables/ │ │ ├── app.js │ │ └── index.html │ ├── data-fetching/ │ │ ├── Post.vue │ │ ├── api.js │ │ ├── app.js │ │ └── index.html │ ├── discrete-components/ │ │ ├── app.js │ │ └── index.html │ ├── global.css │ ├── hash-mode/ │ │ ├── app.js │ │ └── index.html │ ├── hash-scroll-behavior/ │ │ ├── app.js │ │ └── index.html │ ├── index.html │ ├── keepalive-view/ │ │ ├── app.js │ │ └── index.html │ ├── lazy-loading/ │ │ ├── Bar.vue │ │ ├── Baz.vue │ │ ├── Foo.vue │ │ ├── app.js │ │ └── index.html │ ├── lazy-loading-before-mount/ │ │ ├── app.js │ │ └── index.html │ ├── multi-app/ │ │ ├── app.js │ │ └── index.html │ ├── named-routes/ │ │ ├── app.js │ │ └── index.html │ ├── named-views/ │ │ ├── app.js │ │ └── index.html │ ├── navigation-guards/ │ │ ├── app.js │ │ └── index.html │ ├── nested-router/ │ │ ├── app.js │ │ └── index.html │ ├── nested-routes/ │ │ ├── app.js │ │ └── index.html │ ├── redirect/ │ │ ├── app.js │ │ └── index.html │ ├── restart-app/ │ │ ├── app.js │ │ └── index.html │ ├── route-alias/ │ │ ├── app.js │ │ └── index.html │ ├── route-matching/ │ │ ├── app.js │ │ └── index.html │ ├── route-params/ │ │ ├── app.js │ │ └── index.html │ ├── route-props/ │ │ ├── Hello.vue │ │ ├── app.js │ │ └── index.html │ ├── router-errors/ │ │ ├── app.js │ │ └── index.html │ ├── scroll-behavior/ │ │ ├── app.js │ │ └── index.html │ ├── server.js │ ├── transitions/ │ │ ├── app.js │ │ └── index.html │ └── webpack.config.js ├── flow/ │ └── declarations.js ├── netlify.toml ├── package.json ├── scripts/ │ ├── release.sh │ └── verifyCommitMsg.js ├── src/ │ ├── components/ │ │ ├── link.js │ │ └── view.js │ ├── composables/ │ │ ├── globals.js │ │ ├── guards.js │ │ ├── index.js │ │ ├── useLink.js │ │ └── utils.js │ ├── create-matcher.js │ ├── create-route-map.js │ ├── entries/ │ │ ├── cjs.js │ │ └── esm.js │ ├── history/ │ │ ├── abstract.js │ │ ├── base.js │ │ ├── hash.js │ │ └── html5.js │ ├── index.js │ ├── install.js │ ├── router.js │ └── util/ │ ├── async.js │ ├── dom.js │ ├── errors.js │ ├── location.js │ ├── misc.js │ ├── params.js │ ├── path.js │ ├── push-state.js │ ├── query.js │ ├── resolve-components.js │ ├── route.js │ ├── scroll.js │ ├── state-key.js │ └── warn.js ├── test/ │ ├── .eslintrc │ ├── e2e/ │ │ ├── .eslintrc │ │ ├── browserstack-send-status.js │ │ ├── nightwatch.browserstack.js │ │ ├── nightwatch.config.js │ │ ├── runner.js │ │ └── specs/ │ │ ├── .prettierrc │ │ ├── active-links.js │ │ ├── auth-flow.js │ │ ├── basic.js │ │ ├── composables.js │ │ ├── data-fetching.js │ │ ├── hash-mode.js │ │ ├── hash-scroll-behavior.js │ │ ├── history-state.js │ │ ├── keepalive-view.js │ │ ├── lazy-loading-before-mount.js │ │ ├── lazy-loading.js │ │ ├── multi-app.js │ │ ├── named-routes.js │ │ ├── named-views.js │ │ ├── navigation-guards.js │ │ ├── nested-router.js │ │ ├── nested-routes.js │ │ ├── redirect.js │ │ ├── restart-app.js │ │ ├── route-alias.js │ │ ├── route-matching.js │ │ ├── route-params.js │ │ ├── route-props.js │ │ ├── scroll-behavior.js │ │ └── transitions.js │ └── unit/ │ ├── .eslintrc │ ├── jasmine.json │ └── specs/ │ ├── abstract-history.spec.js │ ├── api.spec.js │ ├── async.spec.js │ ├── create-map.spec.js │ ├── create-matcher.spec.js │ ├── custom-query.spec.js │ ├── discrete-components.spec.js │ ├── error-handling.spec.js │ ├── location.spec.js │ ├── node.spec.js │ ├── onReady.spec.js │ ├── path.spec.js │ ├── query.spec.js │ └── route.spec.js ├── types/ │ ├── composables.d.ts │ ├── index.d.ts │ ├── router.d.ts │ ├── test/ │ │ ├── index.ts │ │ ├── meta.ts │ │ └── tsconfig.json │ └── vue.d.ts └── vetur/ ├── attributes.json └── tags.json