diff options
Diffstat (limited to 'node_modules/vuepress/lib/app/dataMixin.js')
| -rw-r--r-- | node_modules/vuepress/lib/app/dataMixin.js | 90 |
1 files changed, 0 insertions, 90 deletions
diff --git a/node_modules/vuepress/lib/app/dataMixin.js b/node_modules/vuepress/lib/app/dataMixin.js deleted file mode 100644 index fd003d92..00000000 --- a/node_modules/vuepress/lib/app/dataMixin.js +++ /dev/null @@ -1,90 +0,0 @@ -import Vue from 'vue' -import { findPageForPath } from './util' - -export default function dataMixin (siteData) { - prepare(siteData) - const store = new Vue({ - data: { siteData } - }) - - if (module.hot) { - module.hot.accept('./.temp/siteData', () => { - prepare(siteData) - store.siteData = siteData - }) - } - - return { - computed: { - $site () { - return store.siteData - }, - $localeConfig () { - const { locales = {}} = this.$site - let targetLang - let defaultLang - for (const path in locales) { - if (path === '/') { - defaultLang = locales[path] - } else if (this.$page.path.indexOf(path) === 0) { - targetLang = locales[path] - } - } - return targetLang || defaultLang || {} - }, - $siteTitle () { - return this.$localeConfig.title || this.$site.title || '' - }, - $title () { - const page = this.$page - const siteTitle = this.$siteTitle - const selfTitle = page.frontmatter.home ? null : ( - page.frontmatter.title || // explicit title - page.title // inferred title - ) - return siteTitle - ? selfTitle - ? (selfTitle + ' | ' + siteTitle) - : siteTitle - : selfTitle || 'VuePress' - }, - $description () { - // #565 hoist description from meta - if (this.$page.frontmatter.meta) { - const descriptionMeta = this.$page.frontmatter.meta.filter(item => item.name === 'description')[0] - if (descriptionMeta) return descriptionMeta.content - } - return this.$page.frontmatter.description || this.$localeConfig.description || this.$site.description || '' - }, - $lang () { - return this.$page.frontmatter.lang || this.$localeConfig.lang || 'en-US' - }, - $localePath () { - return this.$localeConfig.path || '/' - }, - $themeLocaleConfig () { - return (this.$site.themeConfig.locales || {})[this.$localePath] || {} - }, - $page () { - return findPageForPath( - this.$site.pages, - this.$route.path - ) - } - } - } -} - -function prepare (siteData) { - siteData.pages.forEach(page => { - if (!page.frontmatter) { - page.frontmatter = {} - } - }) - if (siteData.locales) { - Object.keys(siteData.locales).forEach(path => { - siteData.locales[path].path = path - }) - } - Object.freeze(siteData) -} |
