From 8bdef5c07d3ba7e6c6a8940bb6786805893812c7 Mon Sep 17 00:00:00 2001
From: Sam Wilkins <samwilkins333@gmail.com>
Date: Wed, 27 Feb 2019 10:29:53 -0500
Subject: workspaces menu initialized

---
 .../authentication/controllers/WorkspacesMenu.tsx  | 48 ++++++++++++++++++++++
 1 file changed, 48 insertions(+)
 create mode 100644 src/server/authentication/controllers/WorkspacesMenu.tsx

(limited to 'src/server/authentication/controllers/WorkspacesMenu.tsx')

diff --git a/src/server/authentication/controllers/WorkspacesMenu.tsx b/src/server/authentication/controllers/WorkspacesMenu.tsx
new file mode 100644
index 000000000..77e3a9778
--- /dev/null
+++ b/src/server/authentication/controllers/WorkspacesMenu.tsx
@@ -0,0 +1,48 @@
+import * as React from 'react';
+import * as ReactDOM from 'react-dom';
+import { observable, action, configure, reaction, computed } from 'mobx';
+import { observer } from "mobx-react";
+import * as request from 'request'
+
+@observer
+export class WorkspacesMenu extends React.Component {
+    static Instance: WorkspacesMenu;
+    @observable private workspacesExposed: boolean = false;
+    @observable private workspaceIds: Array<string> = [];
+
+    constructor(props: Readonly<{}>) {
+        super(props);
+        WorkspacesMenu.Instance = this;
+    }
+
+    toggle() {
+        action(() => {
+            if (!this.workspacesExposed) {
+                request.get(window.location.origin + "/getAllWorkspaceIds", (error, response, body) => {
+                    this.workspaceIds = body;
+                    console.log(this.workspaceIds);
+                })
+            }
+            this.workspacesExposed = !this.workspacesExposed;
+        });
+    }
+
+    render() {
+        return (
+            <div
+                style={{
+                    width: "150px",
+                    height: "150px",
+                    position: "absolute",
+                    top: 75,
+                    right: 0,
+                    background: "grey",
+                    zIndex: 15,
+                    visibility: this.workspacesExposed ? "visible" : "hidden"
+                }}
+            >
+                {this.workspaceIds.map(s => <li key={s} >${s}</li>)}
+            </div>
+        );
+    }
+}
\ No newline at end of file
-- 
cgit v1.2.3-70-g09d2

