diff --git a/packages/server/lib/components/Context.js b/packages/server/lib/components/Context.js index 9934cc991..2574e5e29 100644 --- a/packages/server/lib/components/Context.js +++ b/packages/server/lib/components/Context.js @@ -19,7 +19,7 @@ import getContext from '@lowdefy/engine'; import MountEvents from './MountEvents.js'; -const Context = ({ children, config, lowdefy, progressBarDispatcher }) => { +const Context = ({ children, config, lowdefy, progress }) => { const context = getContext({ config, lowdefy }); return ( { await context._internal.RootBlocks.areas.root.blocks[0].triggerEvent({ name: 'onInit', progress: () => { - progressBarDispatcher({ + progress.dispatch({ type: 'increment', }); }, @@ -44,7 +44,7 @@ const Context = ({ children, config, lowdefy, progressBarDispatcher }) => { context._internal.RootBlocks.areas.root.blocks[0].triggerEvent({ name: 'onInitAsync', progress: () => { - progressBarDispatcher({ + progress.dispatch({ type: 'increment', }); }, @@ -61,7 +61,7 @@ const Context = ({ children, config, lowdefy, progressBarDispatcher }) => { await context._internal.RootBlocks.areas.root.blocks[0].triggerEvent({ name: 'onEnter', progress: () => { - progressBarDispatcher({ + progress.dispatch({ type: 'increment', }); }, @@ -72,12 +72,12 @@ const Context = ({ children, config, lowdefy, progressBarDispatcher }) => { await context._internal.RootBlocks.areas.root.blocks[0].triggerEvent({ name: 'onEnterAsync', // TODO: Do we want this to happen in the background, as in not effecting progress bar? progress: () => { - progressBarDispatcher({ + progress.dispatch({ type: 'increment', }); }, }); - progressBarDispatcher({ + progress.dispatch({ type: 'done', }); }; diff --git a/packages/server/lib/components/Page.js b/packages/server/lib/components/Page.js index 25a08f336..3e670c8af 100644 --- a/packages/server/lib/components/Page.js +++ b/packages/server/lib/components/Page.js @@ -45,32 +45,30 @@ const Page = ({ lowdefy, pageConfig, rootConfig }) => { id="page-loader" ProgressBar={lowdefy._internal.blockComponents.ProgressBar} lowdefy={lowdefy} - > - {(progressBarDispatcher) => ( - - {(context, loading) => { - return ( - <> - - - - ); - }} - - )} - + content={{ + content: (progress) => ( + + {(context, loading) => { + return ( + <> + + + + ); + }} + + ), + }} + /> ); }; diff --git a/packages/server/lib/components/ProgressBarController.js b/packages/server/lib/components/ProgressBarController.js index d2698d564..f4a53acf0 100644 --- a/packages/server/lib/components/ProgressBarController.js +++ b/packages/server/lib/components/ProgressBarController.js @@ -46,7 +46,7 @@ const ProgressBarController = ({ id, ProgressBar, children, lowdefy }) => { properties={{ ...state }} user={lowdefy.user} content={{ - content: () => children(dispatch), + content: () => children({ state, dispatch }), }} /> ); diff --git a/packages/server/lib/components/block/Block.js b/packages/server/lib/components/block/Block.js index 27a8c5652..b2b02400d 100644 --- a/packages/server/lib/components/block/Block.js +++ b/packages/server/lib/components/block/Block.js @@ -14,12 +14,11 @@ limitations under the License. */ -import React, { Suspense, useState } from 'react'; +import React, { useState } from 'react'; import { ErrorBoundary } from '@lowdefy/block-utils'; import CategorySwitch from './CategorySwitch.js'; -import LoadingBlock from './LoadingBlock.js'; import MountEvents from '../MountEvents.js'; const Block = ({ block, Blocks, context, isRoot, lowdefy, parentLoading }) => { @@ -27,33 +26,28 @@ const Block = ({ block, Blocks, context, isRoot, lowdefy, parentLoading }) => { lowdefy._internal.updaters[block.id] = () => setUpdate(updates + 1); return ( - }> - { - await block.triggerEvent({ name: 'onMount' }); - }} - triggerEventAsync={() => { - block.triggerEvent({ name: 'onMount' }); - }} - > - {(loading) => - loading ? ( - - ) : ( - - ) - } - - + { + await block.triggerEvent({ name: 'onMount' }); + }} + triggerEventAsync={() => { + block.triggerEvent({ name: 'onMount' }); + }} + > + {(loading) => ( + + )} + ); };