Merged PR 164: Clear the leftover TODOs
All checks were successful
continuous-integration/drone/push Build is passing

- Remove nullable type from container.properties.parentId
- Add Swal when trying to delete main container
- Moved default editor state to default.ts
- Moved default symbol model to default.ts
This commit is contained in:
Eric Nguyen 2022-08-22 15:03:46 +00:00
parent 66ea3b1b64
commit 29625dce28
6 changed files with 81 additions and 48 deletions

View file

@ -1,10 +1,9 @@
import { Dispatch, SetStateAction } from 'react';
import { IConfiguration } from '../../../Interfaces/IConfiguration';
import { ContainerModel } from '../../../Interfaces/IContainerModel';
import { fetchConfiguration } from '../../API/api';
import { IEditorState } from '../../../Interfaces/IEditorState';
import { LoadState } from './Load';
import { DEFAULT_MAINCONTAINER_PROPS } from '../../../utils/default';
import { GetDefaultEditorState } from '../../../utils/default';
export function NewEditor(
setEditorState: Dispatch<SetStateAction<IEditorState>>,
@ -13,38 +12,12 @@ export function NewEditor(
// Fetch the configuration from the API
fetchConfiguration()
.then((configuration: IConfiguration) => {
// Set the main container from the given properties of the API
const MainContainer = new ContainerModel(
null,
{
...DEFAULT_MAINCONTAINER_PROPS,
width: Number(configuration.MainContainer.Width),
height: Number(configuration.MainContainer.Height)
}
);
// Set the editor from the given properties of the API
const editorState: IEditorState = GetDefaultEditorState(configuration);
// Save the configuration and the new MainContainer
// and default the selected container to it
// TODO: Put this in default.ts
const editorState: IEditorState = {
configuration,
history:
[
{
LastAction: '',
MainContainer,
SelectedContainerId: MainContainer.properties.id,
TypeCounters: {},
Symbols: new Map(),
SelectedSymbolId: ''
}
],
historyCurrentStep: 0
};
setEditorState(editorState);
setLoaded(true);
}, (error) => {
// TODO: Implement an alert component
console.warn('[NewEditor] Could not fetch resource from API. Using default.', error);
setLoaded(true);
});