diff --git a/src/App.tsx b/src/App.tsx index f1e94dd..6376796 100644 --- a/src/App.tsx +++ b/src/App.tsx @@ -1,8 +1,8 @@ import React from 'react'; import './App.scss'; import Sidebar from './Components/Sidebar/Sidebar'; -import { IAvailableContainerModel } from './Interfaces/IAvailableContainerModel'; -import { IConfigurationResponseModel } from './Interfaces/IConfigurationResponseModel'; +import { AvailableContainer } from './Interfaces/AvailableContainer'; +import { Configuration } from './Interfaces/Configuration'; import { SVG } from './SVG/SVG'; interface IAppProps { @@ -10,7 +10,7 @@ interface IAppProps { interface IAppState { isSidebarOpen: boolean, - configuration: IConfigurationResponseModel + configuration: Configuration } class App extends React.Component { @@ -23,13 +23,13 @@ class App extends React.Component { configuration: { AvailableContainers: [], AvailableSymbols: [], - MainContainer: {} as IAvailableContainerModel + MainContainer: {} as AvailableContainer } }; } componentDidMount() { - fetchConfiguration().then((configuration: IConfigurationResponseModel) => { + fetchConfiguration().then((configuration: Configuration) => { this.setState({ isSidebarOpen: this.state.isSidebarOpen, configuration @@ -55,7 +55,7 @@ class App extends React.Component { } } -async function fetchConfiguration(): Promise { +async function fetchConfiguration(): Promise { const url = `${import.meta.env.VITE_API_URL}`; const myHeaders = new Headers({ 'Content-Type': 'application/json' @@ -69,7 +69,7 @@ async function fetchConfiguration(): Promise { return await fetch(url, myInit) .then((response) => response.json() - ) as IConfigurationResponseModel; + ) as Configuration; } export default App; diff --git a/src/Components/Sidebar/Sidebar.tsx b/src/Components/Sidebar/Sidebar.tsx index 8ca7e16..c8fd740 100644 --- a/src/Components/Sidebar/Sidebar.tsx +++ b/src/Components/Sidebar/Sidebar.tsx @@ -1,8 +1,8 @@ import * as React from 'react'; -import { IAvailableContainerModel } from '../../Interfaces/IAvailableContainerModel'; +import { AvailableContainer } from '../../Interfaces/AvailableContainer'; interface ISidebarProps { - componentOptions: IAvailableContainerModel[] + componentOptions: AvailableContainer[] isOpen: boolean; onClick: () => void; } diff --git a/src/Interfaces/ActionContainerModel.ts b/src/Interfaces/ActionContainerModel.ts deleted file mode 100644 index 1f398b0..0000000 --- a/src/Interfaces/ActionContainerModel.ts +++ /dev/null @@ -1,11 +0,0 @@ -import { AddingBehavior } from '../Enums/AddingBehavior'; -import { IImageModel } from './IImageModel'; - -export interface IActionContainerModel { - Id: string - CustomLogo: IImageModel - Label: string - Description: string - Action: string - AddingBehavior: AddingBehavior -} diff --git a/src/Interfaces/AvailableContainer.ts b/src/Interfaces/AvailableContainer.ts new file mode 100644 index 0000000..d7bb22f --- /dev/null +++ b/src/Interfaces/AvailableContainer.ts @@ -0,0 +1,9 @@ +import React from 'react'; + +/** Model of available container used in application configuration */ +export interface AvailableContainer { + Type: string + Width: number + Height: number + Style: React.CSSProperties +} diff --git a/src/Interfaces/IAvailableSymbolModel.ts b/src/Interfaces/AvailableSymbol.ts similarity index 67% rename from src/Interfaces/IAvailableSymbolModel.ts rename to src/Interfaces/AvailableSymbol.ts index 865d49f..e1d518d 100644 --- a/src/Interfaces/IAvailableSymbolModel.ts +++ b/src/Interfaces/AvailableSymbol.ts @@ -1,12 +1,12 @@ import { XPositionReference } from '../Enums/XPositionReference'; -import { IImageModel } from './IImageModel'; +import { Image } from './Image'; /** * Model of available symbol to configure the application */ -export interface IAvailableSymbolModel { +export interface AvailableSymbolModel { Name: string XPositionReference: XPositionReference - Image: IImageModel + Image: Image Width: number Height: number } diff --git a/src/Interfaces/Configuration.ts b/src/Interfaces/Configuration.ts new file mode 100644 index 0000000..2127299 --- /dev/null +++ b/src/Interfaces/Configuration.ts @@ -0,0 +1,9 @@ +import { AvailableContainer } from './AvailableContainer'; +import { AvailableSymbolModel } from './AvailableSymbol'; + +/** Model of configuration for the application to configure it */ +export interface Configuration { + AvailableContainers: AvailableContainer[]; + AvailableSymbols: AvailableSymbolModel[]; + MainContainer: AvailableContainer; +} diff --git a/src/Interfaces/IAvailableContainerModel.ts b/src/Interfaces/IAvailableContainerModel.ts deleted file mode 100644 index 1a1c1fe..0000000 --- a/src/Interfaces/IAvailableContainerModel.ts +++ /dev/null @@ -1,28 +0,0 @@ -import { IActionContainerModel } from './ActionContainerModel' -import { IAvailableDefaultContainerModel } from './IAvailableDefaultContainerModel' - -/** Model of available container used in application configuration */ -export interface IAvailableContainerModel { - Type: string - BodyColor: string - BorderColor: string - BorderWidth: number - Width: number - Height: number - Padding: number - MinWidth: number - MaxWidth: number - MinHeight: number - MaxHeight: number - IsWidthFixed: boolean - IsPositionFixed: boolean - - ShowCotation: boolean - - /** Default Type container to add with this container (Priority on DefaultChildrenContainers property) */ - TypeChildContainerDefault: string - - /** Default children container to add with this container */ - DefaultChildrenContainers: IAvailableDefaultContainerModel[] - ContainerActions: IActionContainerModel[] -} diff --git a/src/Interfaces/IAvailableDefaultContainerModel.ts b/src/Interfaces/IAvailableDefaultContainerModel.ts deleted file mode 100644 index 097fff2..0000000 --- a/src/Interfaces/IAvailableDefaultContainerModel.ts +++ /dev/null @@ -1,4 +0,0 @@ -export interface IAvailableDefaultContainerModel { - Type: string - DefaultChildrenContainers: IAvailableDefaultContainerModel[] -} diff --git a/src/Interfaces/IConfigurationResponseModel.ts b/src/Interfaces/IConfigurationResponseModel.ts deleted file mode 100644 index 1f92dc7..0000000 --- a/src/Interfaces/IConfigurationResponseModel.ts +++ /dev/null @@ -1,9 +0,0 @@ -import { IAvailableContainerModel } from './IAvailableContainerModel'; -import { IAvailableSymbolModel } from './IAvailableSymbolModel'; - -/** Model of configuration for the application to configure it */ -export interface IConfigurationResponseModel { - AvailableContainers: IAvailableContainerModel[]; - AvailableSymbols: IAvailableSymbolModel[]; - MainContainer: IAvailableContainerModel; -} diff --git a/src/Interfaces/IImageModel.ts b/src/Interfaces/Image.ts similarity index 80% rename from src/Interfaces/IImageModel.ts rename to src/Interfaces/Image.ts index 58598cb..723d04b 100644 --- a/src/Interfaces/IImageModel.ts +++ b/src/Interfaces/Image.ts @@ -1,5 +1,5 @@ /** Model of an image with multiple source */ -export interface IImageModel { +export interface Image { Name: string; Url: string; Base64Image: string; diff --git a/src/SVG/SVG.tsx b/src/SVG/SVG.tsx index ac6181c..ff83c9e 100644 --- a/src/SVG/SVG.tsx +++ b/src/SVG/SVG.tsx @@ -1,9 +1,9 @@ import * as React from 'react'; -import { IAvailableContainerModel } from '../Interfaces/IAvailableContainerModel'; +import { AvailableContainer } from '../Interfaces/AvailableContainer'; import { MainContainer } from './Elements/MainContainer'; interface ISVGProps { - MainContainer: IAvailableContainerModel + MainContainer: AvailableContainer } export class SVG extends React.Component {