diff --git a/backend/go-app/main.go b/backend/go-app/main.go
index 26644fb8..cfaf3f5e 100755
--- a/backend/go-app/main.go
+++ b/backend/go-app/main.go
@@ -6052,9 +6052,16 @@ func initHandlers() {
r.HandleFunc("/api/v1/orgs/{orgId}/list_cache", shuffle.HandleListCacheKeys).Methods("GET", "OPTIONS")
r.HandleFunc("/api/v1/orgs/{orgId}/get_cache", shuffle.HandleGetCacheKey).Methods("POST", "OPTIONS")
r.HandleFunc("/api/v1/orgs/{orgId}/set_cache", shuffle.HandleSetCacheKey).Methods("POST", "OPTIONS")
- r.HandleFunc("/api/v1/orgs/{orgId}/cache/{cache_key}", shuffle.HandleDeleteCacheKey).Methods("DELETE", "OPTIONS")
+
r.HandleFunc("/api/v1/orgs/{orgId}/stats", shuffle.HandleGetStatistics).Methods("GET", "OPTIONS")
- r.HandleFunc("/api/v1/orgs/{orgId}/revisions", shuffle.GetWorkflowRevisions).Methods("GET", "OPTIONS")
+
+ r.HandleFunc("/api/v1/orgs/{orgId}/cache", shuffle.HandleListCacheKeys).Methods("GET", "OPTIONS")
+ r.HandleFunc("/api/v1/orgs/{orgId}/cache", shuffle.HandleSetCacheKey).Methods("POST", "OPTIONS")
+ r.HandleFunc("/api/v1/orgs/{orgId}/cache/{cache_key}", shuffle.HandleDeleteCacheKey).Methods("DELETE", "OPTIONS")
+ r.HandleFunc("/api/v1/orgs/{orgId}/datastore", shuffle.HandleListCacheKeys).Methods("GET", "OPTIONS")
+ r.HandleFunc("/api/v1/orgs/{orgId}/datastore", shuffle.HandleSetCacheKey).Methods("POST", "OPTIONS")
+ r.HandleFunc("/api/v1/orgs/{orgId}/datastore/{cache_key}", shuffle.HandleDeleteCacheKey).Methods("DELETE", "OPTIONS")
+
// Docker orborus specific - downloads an image
r.HandleFunc("/api/v1/get_docker_image", getDockerImage).Methods("POST", "OPTIONS")
diff --git a/frontend/package.json b/frontend/package.json
index 4a4e9808..eb281a80 100755
--- a/frontend/package.json
+++ b/frontend/package.json
@@ -13,6 +13,7 @@
"@mui/material": "^5.14.0",
"@mui/styles": "^5.14.0",
"@mui/x-data-grid": "^5.17.11",
+ "@mui/x-date-pickers": "^6.11.1",
"@uiw/codemirror-themes": "^4.21.7",
"@uiw/react-codemirror": "^4.21.7",
"@use-it/interval": "^1.0.0",
@@ -24,6 +25,7 @@
"cytoscape-edgehandles": "^3.6.0",
"cytoscape-node-html-label": "^1.1.5",
"d3": "^7.1.1",
+ "dayjs": "^1.11.9",
"dotenv": "^6.1.0",
"downshift": "^3.3.5",
"github-markdown-css": "^3.0.1",
@@ -36,11 +38,11 @@
"jss-nested": "^6.0.1",
"jss-props-sort": "^6.0.0",
"jss-vendor-prefixer": "^8.0.1",
- "material-ui-chip-input": "^2.0.0-beta.2",
"md5-file": "^4.0.0",
"mdbreact": "^4.21.1",
"mime": "^3.0.0",
"moment": "^2.29.1",
+ "mui-chips-input": "^2.1.3",
"mui-nested-menu": "^3.2.1",
"process": "^0.11.10",
"react": "^18.2.0",
diff --git a/frontend/src/App.jsx b/frontend/src/App.jsx
index abeb8ab3..28b665b0 100755
--- a/frontend/src/App.jsx
+++ b/frontend/src/App.jsx
@@ -167,7 +167,7 @@ const App = (message, props) => {
const includedData =
{
{
Object.getOwnPropertyNames(discoveryData).length > 0 ?
-
+
{paperTitle.length > 0 ?
@@ -2130,7 +2128,7 @@ const AppFramework = (props) => {
?
- Click an app below to select it
+ Search to find your app
:
@@ -2165,7 +2163,7 @@ const AppFramework = (props) => {
elements={elements}
minZoom={0.35}
maxZoom={2.00}
- style={{width: 560*scale, height: 560*scale, backgroundColor: "transparent", margin: "auto",}}
+ style={{width: 560*scale, height: 560*scale, backgroundColor: theme.palette.backgroundColor, margin: "auto",}}
stylesheet={frameworkStyle}
boxSelectionEnabled={false}
panningEnabled={false}
diff --git a/frontend/src/components/Appsearch.jsx b/frontend/src/components/Appsearch.jsx
index 40af3e48..ee8f22b8 100644
--- a/frontend/src/components/Appsearch.jsx
+++ b/frontend/src/components/Appsearch.jsx
@@ -1,14 +1,25 @@
import React, { useState, useEffect } from 'react';
import ReactGA from 'react-ga4';
-import { useTheme } from '@material-ui/core/styles';
+import theme from '../theme';
+//import { useTheme } from '@material-ui/core/styles';
import {Link} from 'react-router-dom';
import { useAlert } from "react-alert";
-import { Search as SearchIcon, CloudQueue as CloudQueueIcon, Code as CodeIcon } from '@material-ui/icons';
+import { Search as SearchIcon, CloudQueue as CloudQueueIcon, Code as CodeIcon } from '@mui/icons-material';
//import algoliasearch from 'algoliasearch/lite';
import algoliasearch from 'algoliasearch';
import { InstantSearch, connectSearchBox, connectHits } from 'react-instantsearch-dom';
-import { Grid, Paper, TextField, ButtonBase, InputAdornment, Typography, Button, Tooltip} from '@material-ui/core';
+import {
+ Grid,
+ Paper,
+ TextField,
+ ButtonBase,
+ InputAdornment,
+ Typography,
+ Button,
+ Tooltip
+} from '@mui/material';
+
import aa from 'search-insights'
const searchClient = algoliasearch("JNSS5CFDZZ", "db08e40265e2941b9a7d8f644b6e5240")
const Appsearch = props => {
@@ -18,7 +29,7 @@ const Appsearch = props => {
const alert = useAlert();
const rowHandler = maxRows === undefined || maxRows === null ? 50 : maxRows
const xs = parsedXs === undefined || parsedXs === null ? 12 : parsedXs
- const theme = useTheme();
+ //const theme = useTheme();
//const [apps, setApps] = React.useState([]);
//const [filteredApps, setFilteredApps] = React.useState([]);
const [formMail, setFormMail] = React.useState("");
diff --git a/frontend/src/components/EditWorkflow.jsx b/frontend/src/components/EditWorkflow.jsx
index f4a2b6e0..f9aacdde 100644
--- a/frontend/src/components/EditWorkflow.jsx
+++ b/frontend/src/components/EditWorkflow.jsx
@@ -1,7 +1,7 @@
import React, { useEffect, useContext } from "react";
import theme from '../theme.jsx';
import { isMobile } from "react-device-detect"
-import ChipInput from "material-ui-chip-input";
+import { MuiChipsInput } from "mui-chips-input";
import UsecaseSearch from "../components/UsecaseSearch.jsx"
import dayjs from 'dayjs';
@@ -38,7 +38,7 @@ import {
FormControl,
FormLabel,
-} from "@material-ui/core";
+} from "@mui/material";
import {
DatePicker,
@@ -52,7 +52,7 @@ import {
ExpandMore as ExpandMoreIcon,
Publish as PublishIcon,
OpenInNew as OpenInNewIcon,
-} from "@material-ui/icons";
+} from "@mui/icons-material";
const EditWorkflow = (props) => {
const { globalUrl, workflow, setWorkflow, modalOpen, setModalOpen, showUpload, usecases, setNewWorkflow, appFramework, isEditing, userdata, } = props
@@ -260,7 +260,7 @@ const EditWorkflow = (props) => {
/>
-
{
const { globalUrl, setNotifications, notifications, isLoggedIn, removeCookie, homePage, userdata, serverside, } = props;
- const theme = useTheme();
+ //const theme = useTheme();
const alert = useAlert()
@@ -519,6 +521,7 @@ const { globalUrl, setNotifications, notifications, isLoggedIn, removeCookie, ho
}
// Handle top bar or something
+ const defaultTop = 7
const loginTextBrowser = !isLoggedIn ?
@@ -669,7 +672,7 @@ const { globalUrl, setNotifications, notifications, isLoggedIn, removeCookie, ho
:
-
+
@@ -691,9 +694,9 @@ const { globalUrl, setNotifications, notifications, isLoggedIn, removeCookie, ho
{/*
-
+
*/}
-
Workflows
+
Workflows
@@ -703,7 +706,7 @@ const { globalUrl, setNotifications, notifications, isLoggedIn, removeCookie, ho
{/*
*/}
- Apps
+ Apps
@@ -720,7 +723,7 @@ const { globalUrl, setNotifications, notifications, isLoggedIn, removeCookie, ho
{/*
*/}
-
Docs
+
Docs
@@ -1029,16 +1032,16 @@ const { globalUrl, setNotifications, notifications, isLoggedIn, removeCookie, ho
const loadedCheck =
- {loginTextBrowser}
+ {loginTextBrowser}
- {loginTextMobile}
+ {loginTextMobile}
//
return (
-
- {loadedCheck}
+
+ {loadedCheck}
)
}
diff --git a/frontend/src/components/Oauth2Auth.jsx b/frontend/src/components/Oauth2Auth.jsx
index 2b2996cc..27659be3 100755
--- a/frontend/src/components/Oauth2Auth.jsx
+++ b/frontend/src/components/Oauth2Auth.jsx
@@ -1,6 +1,6 @@
import React, { useRef, useState, useEffect, useLayoutEffect } from "react";
import { useParams, useNavigate, Link } from "react-router-dom";
-import { useTheme } from "@material-ui/core/styles";
+//import { useTheme } from "@material-ui/core/styles";
import theme from '../theme.jsx';
import { useAlert } from "react-alert";
@@ -38,7 +38,8 @@ import {
CircularProgress,
Switch,
Fade,
-} from "@material-ui/core";
+} from "@mui/material";
+
import {
LockOpen as LockOpenIcon,
SupervisorAccount as SupervisorAccountIcon,
diff --git a/frontend/src/components/OrgHeader.jsx b/frontend/src/components/OrgHeader.jsx
index 9b4a344d..3b5a091a 100644
--- a/frontend/src/components/OrgHeader.jsx
+++ b/frontend/src/components/OrgHeader.jsx
@@ -1,17 +1,23 @@
import React, { useEffect } from "react";
-import { makeStyles } from "@material-ui/styles";
-import { useTheme } from "@material-ui/core/styles";
+import theme from "../theme";
+import { makeStyles } from "@mui/styles";
+
+import {
+ Tooltip,
+ Grid,
+ Button,
+ TextField,
+ Typography,
+ IconButton,
+} from "@mui/material";
+
+import {
+ ExpandLess as ExpandLessIcon,
+ ExpandMore as ExpandMoreIcon,
+ Save as SaveIcon,
+} from "@mui/icons-material";
-import Tooltip from "@material-ui/core/Tooltip";
-import Grid from "@material-ui/core/Grid";
-import Button from "@material-ui/core/Button";
-import TextField from "@material-ui/core/TextField";
-import Typography from "@material-ui/core/Typography";
import { useAlert } from "react-alert";
-import IconButton from "@material-ui/core/IconButton";
-import ExpandLessIcon from "@material-ui/icons/ExpandLess";
-import ExpandMoreIcon from "@material-ui/icons/ExpandMore";
-import SaveIcon from "@material-ui/icons/Save";
const useStyles = makeStyles({
notchedOutline: {
@@ -33,7 +39,6 @@ const OrgHeader = (props) => {
handleEditOrg,
} = props;
- const theme = useTheme();
const alert = useAlert();
const classes = useStyles();
diff --git a/frontend/src/components/Priorities.jsx b/frontend/src/components/Priorities.jsx
index f0a61a3a..86215b6f 100644
--- a/frontend/src/components/Priorities.jsx
+++ b/frontend/src/components/Priorities.jsx
@@ -9,7 +9,7 @@ import {
Grid,
Card,
Switch,
-} from "@material-ui/core";
+} from "@mui/material";
import Priority from "../components/Priority.jsx";
import { useAlert } from "react-alert";
diff --git a/frontend/src/components/Priority.jsx b/frontend/src/components/Priority.jsx
index 15f71754..a4f93729 100644
--- a/frontend/src/components/Priority.jsx
+++ b/frontend/src/components/Priority.jsx
@@ -10,7 +10,7 @@ import {
Button,
Grid,
Card,
-} from "@material-ui/core";
+} from "@mui/material";
// import magic wand icon from material ui icons
import {
@@ -69,7 +69,7 @@ const Priority = (props) => {
return (
-
+
{priority.type === "usecase" || priority.type == "apps" ? : null}
@@ -102,7 +102,7 @@ const Priority = (props) => {
}
-
-
{
}}
PaperProps={{
style: {
- backgroundColor: surfaceColor,
+ backgroundColor: theme.palette.surfaceColor,
color: "white",
minWidth: 500,
padding: 30,
@@ -835,7 +827,7 @@ const Workflows = (props) => {
}}
PaperProps={{
style: {
- backgroundColor: surfaceColor,
+ backgroundColor: theme.palette.surfaceColor,
color: "white",
minWidth: 500,
padding: 50,
@@ -892,7 +884,7 @@ const Workflows = (props) => {
}}
PaperProps={{
style: {
- backgroundColor: surfaceColor,
+ backgroundColor: theme.palette.surfaceColor,
color: "white",
minWidth: 500,
},
@@ -1253,7 +1245,7 @@ const Workflows = (props) => {
width: "100%",
height: "250px",
color: "white",
- backgroundColor: surfaceColor,
+ backgroundColor: theme.palette.surfaceColor,
display: "flex",
flexDirection: "column",
};
@@ -1271,7 +1263,7 @@ const Workflows = (props) => {
overflow: "hidden",
width: "100%",
color: "white",
- backgroundColor: surfaceColor,
+ backgroundColor: theme.palette.surfaceColor,
padding: "12px 12px 0px 15px",
borderRadius: 5,
display: "flex",
@@ -1283,7 +1275,7 @@ const Workflows = (props) => {
height: "auto",
color: "white",
margin: "10px",
- backgroundColor: surfaceColor,
+ backgroundColor: theme.palette.surfaceColor,
};
const workflowActionStyle = {
@@ -1603,7 +1595,7 @@ const Workflows = (props) => {
const innerColor = "rgba(255,255,255,0.3)";
const setupPaperStyle = {
minHeight: paperAppStyle.minHeight,
- maxWidth: "100%",
+ maxWidth: "100%",
minWidth: paperAppStyle.width,
color: innerColor,
padding: paperAppStyle.padding,
@@ -1710,7 +1702,7 @@ const Workflows = (props) => {
}}
>
- {/*= 0} style={{backgroundColor: inputColor, color: "white"}} onClick={() => {
+ {/*= 0} style={{backgroundColor: theme.palette.inputColor, color: "white"}} onClick={() => {
//copyWorkflow(data)
//setOpen(false)
}} key={"duplicate"}>
@@ -1763,7 +1755,7 @@ const Workflows = (props) => {
{"Copy to Child Org"}
*/}