From 6b974e63fc79a3d1b87a478d83269ec8e8121ea0 Mon Sep 17 00:00:00 2001 From: Sam Date: Wed, 25 May 2022 10:34:42 +0200 Subject: [PATCH] fix(build): remove unneccesary async await in build. --- .../build/addDefaultPages/addDefaultPages.js | 2 +- packages/build/src/build/buildConnections.js | 2 +- packages/build/src/build/buildMenu.js | 18 ++++++++--------- .../build/buildPages/buildBlock/buildBlock.js | 4 ++-- .../buildPages/buildBlock/buildSubBlocks.js | 9 ++------- .../build/src/build/buildPages/buildPage.js | 4 ++-- .../build/src/build/buildPages/buildPages.js | 7 ++----- packages/build/src/build/testSchema.js | 8 +++----- packages/build/src/build/validateApp.js | 2 +- packages/build/src/build/validateConfig.js | 2 +- packages/build/src/index.js | 20 +++++++++---------- 11 files changed, 33 insertions(+), 45 deletions(-) diff --git a/packages/build/src/build/addDefaultPages/addDefaultPages.js b/packages/build/src/build/addDefaultPages/addDefaultPages.js index bd8f899d35..66ad472be6 100644 --- a/packages/build/src/build/addDefaultPages/addDefaultPages.js +++ b/packages/build/src/build/addDefaultPages/addDefaultPages.js @@ -17,7 +17,7 @@ import { type } from '@lowdefy/helpers'; import page404 from './404.js'; -async function addDefaultPages({ components }) { +function addDefaultPages({ components }) { // If not copied, the same object is mutated by build every time // build runs for dev server. See #647 const defaultPages = [JSON.parse(JSON.stringify(page404))]; diff --git a/packages/build/src/build/buildConnections.js b/packages/build/src/build/buildConnections.js index 5e7da832b3..c078a9daf8 100644 --- a/packages/build/src/build/buildConnections.js +++ b/packages/build/src/build/buildConnections.js @@ -20,7 +20,7 @@ import { type } from '@lowdefy/helpers'; import countOperators from '../utils/countOperators.js'; import createCheckDuplicateId from '../utils/createCheckDuplicateId.js'; -async function buildConnections({ components, context }) { +function buildConnections({ components, context }) { const checkDuplicateConnectionId = createCheckDuplicateId({ message: 'Duplicate connectionId "{{ id }}".', }); diff --git a/packages/build/src/build/buildMenu.js b/packages/build/src/build/buildMenu.js index 08e7aa8869..536f42bbb3 100644 --- a/packages/build/src/build/buildMenu.js +++ b/packages/build/src/build/buildMenu.js @@ -19,7 +19,7 @@ import { type } from '@lowdefy/helpers'; import createCheckDuplicateId from '../utils/createCheckDuplicateId.js'; -async function buildDefaultMenu({ components, context }) { +function buildDefaultMenu({ components, context }) { context.logger.warn('No menus found. Building default menu.'); const pages = type.isArray(components.pages) ? components.pages : []; const menus = [ @@ -72,10 +72,10 @@ function loopItems({ parent, menuId, pages, missingPageWarnings, checkDuplicateM } } -async function buildMenu({ components, context }) { +function buildMenu({ components, context }) { const pages = type.isArray(components.pages) ? components.pages : []; if (type.isUndefined(components.menus) || components.menus.length === 0) { - components.menus = await buildDefaultMenu({ components, context }); + components.menus = buildDefaultMenu({ components, context }); } const missingPageWarnings = []; const checkDuplicateMenuId = createCheckDuplicateId({ message: 'Duplicate menuId "{{ id }}".' }); @@ -100,13 +100,11 @@ async function buildMenu({ components, context }) { checkDuplicateMenuItemId, }); }); - await Promise.all( - missingPageWarnings.map(async (warning) => { - await context.logger.warn( - `Page "${warning.pageId}" referenced in menu link "${warning.menuItemId}" not found.` - ); - }) - ); + missingPageWarnings.map(async (warning) => { + context.logger.warn( + `Page "${warning.pageId}" referenced in menu link "${warning.menuItemId}" not found.` + ); + }); return components; } diff --git a/packages/build/src/build/buildPages/buildBlock/buildBlock.js b/packages/build/src/build/buildPages/buildBlock/buildBlock.js index 0f4f5ef7ea..b5e0a8bed7 100644 --- a/packages/build/src/build/buildPages/buildBlock/buildBlock.js +++ b/packages/build/src/build/buildPages/buildBlock/buildBlock.js @@ -24,7 +24,7 @@ import moveSkeletonBlocksToArea from './moveSkeletonBlocksToArea.js'; import setBlockId from './setBlockId.js'; import validateBlock from './validateBlock.js'; -async function buildBlock(block, pageContext) { +function buildBlock(block, pageContext) { validateBlock(block, pageContext); setBlockId(block, pageContext); countBlockOperators(block, pageContext); @@ -33,7 +33,7 @@ async function buildBlock(block, pageContext) { moveSubBlocksToArea(block, pageContext); moveSkeletonBlocksToArea(block, pageContext); countBlockTypes(block, pageContext); - await buildSubBlocks(block, pageContext); + buildSubBlocks(block, pageContext); } export default buildBlock; diff --git a/packages/build/src/build/buildPages/buildBlock/buildSubBlocks.js b/packages/build/src/build/buildPages/buildBlock/buildSubBlocks.js index 9f55485c94..9fb0cc2730 100644 --- a/packages/build/src/build/buildPages/buildBlock/buildSubBlocks.js +++ b/packages/build/src/build/buildPages/buildBlock/buildSubBlocks.js @@ -18,9 +18,8 @@ import { type } from '@lowdefy/helpers'; import buildBlock from './buildBlock.js'; -async function buildSubBlocks(block, pageContext) { +function buildSubBlocks(block, pageContext) { if (type.isObject(block.areas)) { - let promises = []; Object.keys(block.areas).forEach((key) => { if (type.isNone(block.areas[key].blocks)) { block.areas[key].blocks = []; @@ -32,12 +31,8 @@ async function buildSubBlocks(block, pageContext) { }. Received ${JSON.stringify(block.areas[key].blocks)}` ); } - const blockPromises = block.areas[key].blocks.map(async (blk) => { - await buildBlock(blk, pageContext); - }); - promises = promises.concat(blockPromises); + block.areas[key].blocks.map(async (blk) => buildBlock(blk, pageContext)); }); - await Promise.all(promises); } } diff --git a/packages/build/src/build/buildPages/buildPage.js b/packages/build/src/build/buildPages/buildPage.js index 84ffe1036a..d031e0923d 100644 --- a/packages/build/src/build/buildPages/buildPage.js +++ b/packages/build/src/build/buildPages/buildPage.js @@ -21,7 +21,7 @@ import buildBlock from './buildBlock/buildBlock.js'; import createCheckDuplicateId from '../../utils/createCheckDuplicateId.js'; import createCounter from '../../utils/createCounter.js'; -async function buildPage({ page, index, context, checkDuplicatePageId }) { +function buildPage({ page, index, context, checkDuplicatePageId }) { if (type.isUndefined(page.id)) { throw new Error(`Page id missing at page ${index}.`); } @@ -34,7 +34,7 @@ async function buildPage({ page, index, context, checkDuplicatePageId }) { page.pageId = page.id; const requests = []; const operators = new Set(); - await buildBlock(page, { + buildBlock(page, { auth: page.auth, blockIdCounter: createCounter(), checkDuplicateRequestId: createCheckDuplicateId({ diff --git a/packages/build/src/build/buildPages/buildPages.js b/packages/build/src/build/buildPages/buildPages.js index 7ff68ce7e4..45c0740ca2 100644 --- a/packages/build/src/build/buildPages/buildPages.js +++ b/packages/build/src/build/buildPages/buildPages.js @@ -20,15 +20,12 @@ import { type } from '@lowdefy/helpers'; import buildPage from './buildPage.js'; import createCheckDuplicateId from '../../utils/createCheckDuplicateId.js'; -async function buildPages({ components, context }) { +function buildPages({ components, context }) { const pages = type.isArray(components.pages) ? components.pages : []; const checkDuplicatePageId = createCheckDuplicateId({ message: 'Duplicate pageId "{{ id }}".', }); - const pageBuildPromises = pages.map((page, index) => - buildPage({ page, index, context, checkDuplicatePageId }) - ); - await Promise.all(pageBuildPromises); + pages.map((page, index) => buildPage({ page, index, context, checkDuplicatePageId })); return components; } diff --git a/packages/build/src/build/testSchema.js b/packages/build/src/build/testSchema.js index ddc0a7c049..6b10897a70 100644 --- a/packages/build/src/build/testSchema.js +++ b/packages/build/src/build/testSchema.js @@ -18,7 +18,7 @@ import { validate } from '@lowdefy/ajv'; import lowdefySchema from '../lowdefySchema.js'; import formatErrorMessage from '../utils/formatErrorMessage.js'; -async function testSchema({ components, context }) { +function testSchema({ components, context }) { const { valid, errors } = validate({ schema: lowdefySchema, data: components, @@ -26,10 +26,8 @@ async function testSchema({ components, context }) { }); if (!valid) { - await context.logger.warn('Schema not valid.'); - await Promise.all( - errors.map((error) => context.logger.warn(formatErrorMessage({ error, components }))) - ); + context.logger.warn('Schema not valid.'); + errors.map((error) => context.logger.warn(formatErrorMessage({ error, components }))); } } diff --git a/packages/build/src/build/validateApp.js b/packages/build/src/build/validateApp.js index 9a6bf00229..067ba94f5b 100644 --- a/packages/build/src/build/validateApp.js +++ b/packages/build/src/build/validateApp.js @@ -18,7 +18,7 @@ import { type } from '@lowdefy/helpers'; -async function validateApp({ components }) { +function validateApp({ components }) { if (type.isNone(components.app)) { components.app = {}; } diff --git a/packages/build/src/build/validateConfig.js b/packages/build/src/build/validateConfig.js index efa6dcb6b0..d11ff8f0b9 100644 --- a/packages/build/src/build/validateConfig.js +++ b/packages/build/src/build/validateConfig.js @@ -18,7 +18,7 @@ import { type } from '@lowdefy/helpers'; -async function validateConfig({ components }) { +function validateConfig({ components }) { if (type.isNone(components.config)) { components.config = {}; } diff --git a/packages/build/src/index.js b/packages/build/src/index.js index 127d1ca626..55259598e0 100644 --- a/packages/build/src/index.js +++ b/packages/build/src/index.js @@ -85,16 +85,16 @@ async function createContext({ customTypesMap, directories, logger, refResolver, async function build(options) { const context = await createContext(options); const components = await buildRefs({ context }); - await testSchema({ components, context }); - await validateApp({ components, context }); - await validateConfig({ components, context }); - await addDefaultPages({ components, context }); - await buildAuth({ components, context }); - await buildConnections({ components, context }); - await buildPages({ components, context }); - await buildMenu({ components, context }); - await buildTypes({ components, context }); - await buildImports({ components, context }); + testSchema({ components, context }); + validateApp({ components, context }); + validateConfig({ components, context }); + addDefaultPages({ components, context }); + buildAuth({ components, context }); + buildConnections({ components, context }); + buildPages({ components, context }); + buildMenu({ components, context }); + buildTypes({ components, context }); + buildImports({ components, context }); await cleanBuildDirectory({ context }); await writeApp({ components, context }); await writeAuth({ components, context });