Move MainMenu Loading to App + Change is/setLoaded to appState/setAppState
This commit is contained in:
parent
b44c6fb477
commit
eaf03824fb
10 changed files with 1149 additions and 1138 deletions
|
@ -1,4 +1,5 @@
|
|||
import { useEffect } from 'react';
|
||||
import { AppState } from '../Enums/AppState';
|
||||
import { IConfiguration } from '../Interfaces/IConfiguration';
|
||||
import { IEditorState } from '../Interfaces/IEditorState';
|
||||
import { IHistoryState } from '../Interfaces/IHistoryState';
|
||||
|
@ -10,14 +11,14 @@ export interface IAppEvent {
|
|||
func: (
|
||||
root: Element | Document,
|
||||
setEditor: (newState: IEditorState) => void,
|
||||
setLoaded: (loaded: boolean) => void,
|
||||
setAppState: (appState: AppState) => void,
|
||||
eventInitDict?: CustomEventInit
|
||||
) => void
|
||||
}
|
||||
|
||||
export const events: IAppEvent[] = [
|
||||
{ name: 'setEditor', func: SetEditor },
|
||||
{ name: 'setLoaded', func: SetLoaded },
|
||||
{ name: 'setAppState', func: SetAppState },
|
||||
{ name: 'reviveEditorState', func: ReviveEditorState },
|
||||
{ name: 'reviveHistory', func: ReviveHistory },
|
||||
{ name: 'getDefaultEditorState', func: GetDefaultEditorState }
|
||||
|
@ -27,7 +28,7 @@ export function UseCustomEvents(
|
|||
root: Element | Document,
|
||||
appRef: React.RefObject<HTMLDivElement>,
|
||||
setEditor: (newState: IEditorState) => void,
|
||||
setLoaded: (loaded: boolean) => void
|
||||
setAppState: (appState: AppState) => void
|
||||
): void {
|
||||
useEffect(() => {
|
||||
const funcs = new Map<string, () => void>();
|
||||
|
@ -36,7 +37,7 @@ export function UseCustomEvents(
|
|||
return event.func(
|
||||
root,
|
||||
setEditor,
|
||||
setLoaded,
|
||||
setAppState,
|
||||
eventInitDict
|
||||
);
|
||||
}
|
||||
|
@ -58,29 +59,30 @@ export function UseCustomEvents(
|
|||
function SetEditor(
|
||||
root: Element | Document,
|
||||
setEditor: (newState: IEditorState) => void,
|
||||
setLoaded: (loaded: boolean) => void,
|
||||
setAppState: (appState: AppState) => void,
|
||||
eventInitDict?: CustomEventInit
|
||||
): void {
|
||||
const editor: IEditorState = eventInitDict?.detail;
|
||||
setEditor(editor);
|
||||
setAppState(AppState.Loading);
|
||||
const customEvent = new CustomEvent<IEditorState>('setEditor', { detail: editor });
|
||||
root.dispatchEvent(customEvent);
|
||||
}
|
||||
|
||||
function SetLoaded(
|
||||
function SetAppState(
|
||||
root: Element | Document,
|
||||
setEditor: (newState: IEditorState) => void,
|
||||
setLoaded: (loaded: boolean) => void,
|
||||
setAppState: (appState: AppState) => void,
|
||||
eventInitDict?: CustomEventInit
|
||||
): void {
|
||||
const isLoaded: boolean = eventInitDict?.detail;
|
||||
setLoaded(isLoaded);
|
||||
const appState: AppState = eventInitDict?.detail;
|
||||
setAppState(appState);
|
||||
}
|
||||
|
||||
function ReviveEditorState(
|
||||
root: Element | Document,
|
||||
setEditor: (newState: IEditorState) => void,
|
||||
setLoaded: (loaded: boolean) => void,
|
||||
setAppState: (appState: AppState) => void,
|
||||
eventInitDict?: CustomEventInit): void {
|
||||
const anEditorState: IEditorState = eventInitDict?.detail;
|
||||
Revive(anEditorState);
|
||||
|
@ -91,7 +93,7 @@ function ReviveEditorState(
|
|||
function ReviveHistory(
|
||||
root: Element | Document,
|
||||
setEditor: (newState: IEditorState) => void,
|
||||
setLoaded: (loaded: boolean) => void,
|
||||
setAppState: (appState: AppState) => void,
|
||||
eventInitDict?: CustomEventInit): void {
|
||||
const history: IHistoryState[] = eventInitDict?.detail;
|
||||
ReviveHistoryAction(history);
|
||||
|
@ -102,7 +104,7 @@ function ReviveHistory(
|
|||
function GetDefaultEditorState(
|
||||
root: Element | Document,
|
||||
setEditor: (newState: IEditorState) => void,
|
||||
setLoaded: (loaded: boolean) => void,
|
||||
setAppState: (appState: AppState) => void,
|
||||
eventInitDict?: CustomEventInit): void {
|
||||
const configuration: IConfiguration = eventInitDict?.detail;
|
||||
const editorState = GetDefaultEditorStateAction(configuration);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue