From e9f2fabde12322bb777c106119e4ae71b7ce6506 Mon Sep 17 00:00:00 2001 From: endiliey Date: Fri, 14 Sep 2018 22:10:19 +0800 Subject: [PATCH] chore: rename data -> metadata for consistency --- lib/core/App.js | 7 ++++--- lib/load/index.js | 18 +++++++++--------- lib/load/pages.js | 4 ++-- lib/load/routes.js | 6 +++--- lib/theme/Layout/index.js | 6 +++--- lib/webpack/server.js | 6 +++--- test/load/docs/index.test.js | 16 ++++++++-------- test/load/pages.test.js | 12 ++++++------ 8 files changed, 38 insertions(+), 37 deletions(-) diff --git a/lib/core/App.js b/lib/core/App.js index c0b92a8b44..3302a86ec3 100644 --- a/lib/core/App.js +++ b/lib/core/App.js @@ -1,8 +1,9 @@ import {renderRoutes} from 'react-router-config'; import routes from '@generated/routes'; // eslint-disable-line -import docsData from '@generated/docsData'; // eslint-disable-line -import pagesData from '@generated/pagesData'; // eslint-disable-line +import docsMetadata from '@generated/docsMetadata'; // eslint-disable-line +import pagesMetadata from '@generated/pagesMetadata'; // eslint-disable-line import siteConfig from '@site/siteConfig'; //eslint-disable-line -export default () => renderRoutes(routes, {docsData, pagesData, siteConfig}); +export default () => + renderRoutes(routes, {docsMetadata, pagesMetadata, siteConfig}); diff --git a/lib/load/index.js b/lib/load/index.js index 651975008e..7c986f7c3e 100644 --- a/lib/load/index.js +++ b/lib/load/index.js @@ -20,24 +20,24 @@ module.exports = async function load(siteDir) { '..', siteConfig.customDocsPath || 'docs' ); - const docsData = await loadDocs({siteDir, docsDir, env, siteConfig}); + const docsMetadata = await loadDocs({siteDir, docsDir, env, siteConfig}); await generate( - 'docsData.js', - `export default ${JSON.stringify(docsData, null, 2)};` + 'docsMetadata.js', + `export default ${JSON.stringify(docsMetadata, null, 2)};` ); /* Create source to permalink mapping */ const sourceToLink = {}; - Object.values(docsData).forEach(({source, permalink}) => { + Object.values(docsMetadata).forEach(({source, permalink}) => { sourceToLink[source] = permalink; }); // pages const pagesDir = path.resolve(siteDir, 'pages'); - const pagesData = await loadPages(pagesDir); + const pagesMetadata = await loadPages(pagesDir); await generate( - 'pagesData.js', - `export default ${JSON.stringify(pagesData, null, 2)};` + 'pagesMetadata.js', + `export default ${JSON.stringify(pagesMetadata, null, 2)};` ); // resolve outDir @@ -54,10 +54,10 @@ module.exports = async function load(siteDir) { siteConfig, siteDir, docsDir, - docsData, + docsMetadata, env, pagesDir, - pagesData, + pagesMetadata, outDir, themePath, baseUrl, diff --git a/lib/load/pages.js b/lib/load/pages.js index 7278754164..e0e373647a 100644 --- a/lib/load/pages.js +++ b/lib/load/pages.js @@ -6,13 +6,13 @@ async function loadPages(pagesDir) { cwd: pagesDir }); - const pagesData = await Promise.all( + const pagesMetadata = await Promise.all( pagesFiles.map(async source => ({ path: encodePath(fileToPath(source)), source })) ); - return pagesData; + return pagesMetadata; } module.exports = loadPages; diff --git a/lib/load/routes.js b/lib/load/routes.js index d615960652..a3476c5327 100644 --- a/lib/load/routes.js +++ b/lib/load/routes.js @@ -1,4 +1,4 @@ -async function genRoutesConfig({docsData = {}, pagesData = []}) { +async function genRoutesConfig({docsMetadata = {}, pagesMetadata = []}) { function genDocsRoute(metadata) { const {permalink, source} = metadata; return ` @@ -38,7 +38,7 @@ async function genRoutesConfig({docsData = {}, pagesData = []}) { component: NotFound }`; - const docsRoutes = Object.values(docsData) + const docsRoutes = Object.values(docsMetadata) .map(genDocsRoute) .join(','); @@ -48,7 +48,7 @@ async function genRoutesConfig({docsData = {}, pagesData = []}) { `import Loading from '@theme/Loading';\n` + `import Docs from '@theme/Docs';\n` + `import NotFound from '@theme/NotFound';\n` + - `const routes = [${docsRoutes},${pagesData + `const routes = [${docsRoutes},${pagesMetadata .map(genPagesRoute) .join(',')}${notFoundRoute}\n];\n` + `export default routes;\n` diff --git a/lib/theme/Layout/index.js b/lib/theme/Layout/index.js index dd3fbffc78..e3e29ac8ad 100644 --- a/lib/theme/Layout/index.js +++ b/lib/theme/Layout/index.js @@ -5,11 +5,11 @@ import styles from './styles.css'; /* eslint-disable react/prefer-stateless-function */ export default class Layout extends React.Component { render() { - const {children, pagesData, docsData = {}, location} = this.props; - const docsLinks = Object.values(docsData).map(data => ({ + const {children, pagesMetadata, docsMetadata = {}, location} = this.props; + const docsLinks = Object.values(docsMetadata).map(data => ({ path: `${data.permalink}` })); - const routeLinks = [...pagesData, ...docsLinks].map( + const routeLinks = [...pagesMetadata, ...docsLinks].map( data => data.path !== location.pathname && (
  • diff --git a/lib/webpack/server.js b/lib/webpack/server.js index 85dec57c62..cbdf7bb744 100644 --- a/lib/webpack/server.js +++ b/lib/webpack/server.js @@ -14,13 +14,13 @@ module.exports = function createServerConfig(props) { // Workaround for Webpack 4 Bug (https://github.com/webpack/webpack/issues/6522) config.output.globalObject('this'); - const {siteConfig, docsData, pagesData} = props; + const {siteConfig, docsMetadata, pagesMetadata} = props; // static site generator webpack plugin - const docsLinks = Object.values(docsData).map(data => ({ + const docsLinks = Object.values(docsMetadata).map(data => ({ path: `${data.permalink}` })); - const paths = [...docsLinks, ...pagesData].map(data => data.path); + const paths = [...docsLinks, ...pagesMetadata].map(data => data.path); config.plugin('siteGenerator').use(staticSiteGenerator, [ { entry: 'main', diff --git a/test/load/docs/index.test.js b/test/load/docs/index.test.js index a2fb6e47a7..c90ebb4beb 100644 --- a/test/load/docs/index.test.js +++ b/test/load/docs/index.test.js @@ -5,28 +5,28 @@ describe('loadDocs', () => { test('simple website', async () => { const props = await loadSetup('simple'); const {siteDir, docsDir, env, siteConfig} = props; - const docsData = await loadDocs({siteDir, docsDir, env, siteConfig}); - expect(docsData).toMatchSnapshot(); + const docsMetadata = await loadDocs({siteDir, docsDir, env, siteConfig}); + expect(docsMetadata).toMatchSnapshot(); }); test('versioned website', async () => { const props = await loadSetup('versioned'); const {siteDir, docsDir, env, siteConfig} = props; - const docsData = await loadDocs({siteDir, docsDir, env, siteConfig}); - expect(docsData).toMatchSnapshot(); + const docsMetadata = await loadDocs({siteDir, docsDir, env, siteConfig}); + expect(docsMetadata).toMatchSnapshot(); }); test('versioned & translated website', async () => { const props = await loadSetup('transversioned'); const {siteDir, docsDir, env, siteConfig} = props; - const docsData = await loadDocs({siteDir, docsDir, env, siteConfig}); - expect(docsData).toMatchSnapshot(); + const docsMetadata = await loadDocs({siteDir, docsDir, env, siteConfig}); + expect(docsMetadata).toMatchSnapshot(); }); test('translated website', async () => { const props = await loadSetup('translated'); const {siteDir, docsDir, env, siteConfig} = props; - const docsData = await loadDocs({siteDir, docsDir, env, siteConfig}); - expect(docsData).toMatchSnapshot(); + const docsMetadata = await loadDocs({siteDir, docsDir, env, siteConfig}); + expect(docsMetadata).toMatchSnapshot(); }); }); diff --git a/test/load/pages.test.js b/test/load/pages.test.js index d73bdcb57b..90a01c22b7 100644 --- a/test/load/pages.test.js +++ b/test/load/pages.test.js @@ -4,9 +4,9 @@ import path from 'path'; describe('loadPages', () => { test('valid pages', async () => { const pagesDir = path.join(__dirname, '__fixtures__', 'simple-pages'); - const pagesData = await loadPages(pagesDir); - pagesData.sort((a, b) => a.path > b.path); // because it was unordered - expect(pagesData).toEqual([ + const pagesMetadata = await loadPages(pagesDir); + pagesMetadata.sort((a, b) => a.path > b.path); // because it was unordered + expect(pagesMetadata).toEqual([ { path: '/', source: 'index.js' @@ -24,12 +24,12 @@ describe('loadPages', () => { source: 'foo/index.js' } ]); - expect(pagesData).not.toBeNull(); + expect(pagesMetadata).not.toBeNull(); }); test('invalid pages', async () => { const nonExistingDir = path.join(__dirname, '__fixtures__', 'nonExisting'); - const pagesData = await loadPages(nonExistingDir); - expect(pagesData).toEqual([]); + const pagesMetadata = await loadPages(nonExistingDir); + expect(pagesMetadata).toEqual([]); }); });