diff options
Diffstat (limited to 'v2/screenbuilder.ts')
-rw-r--r-- | v2/screenbuilder.ts | 43 |
1 files changed, 0 insertions, 43 deletions
diff --git a/v2/screenbuilder.ts b/v2/screenbuilder.ts deleted file mode 100644 index e8ce587..0000000 --- a/v2/screenbuilder.ts +++ /dev/null @@ -1,43 +0,0 @@ -import { Screen } from "./screen.ts"; -import * as elements from "./elements.ts"; - -export enum ElemType { - TextElem, - InputElem, - ButtonElem, - HR, - BR -} - -const types = { - 0: elements.Text, - 1: elements.Input, - 2: elements.Button, - 3: elements.HR, - 4: elements.BR -} - -type BuilderElem = { - type: ElemType, - id: string, - data?: any[], -} - -type Data = { - elements: BuilderElem[], - focus?: string, - name: string - onload?: (screen: Screen) => any -} - -export function build(data: Data) { - const screen = new Screen(data.name); - for (const element of data.elements) { - if (!element.data) element.data = [] - //@ts-ignore - screen.addElement(element.id, new types[element.type](...element.data)) - } - if (data.focus) screen.focus(data.focus); - screen.ready() - if (data.onload) data.onload(screen) -} \ No newline at end of file |