diff --git a/backend/app_sdk/app_base.py b/backend/app_sdk/app_base.py
index 5e2cdd3e..c3bc15c4 100644
--- a/backend/app_sdk/app_base.py
+++ b/backend/app_sdk/app_base.py
@@ -1543,7 +1543,7 @@ class AppBase:
sourcevalue = condition["source"]["value"]
check, sourcevalue, is_loop = parse_params(action, fullexecution, condition["source"])
if check:
- return False, "Failed condition: %s %s %s because %s" % (sourcevalue, condition["condition"]["value"], destinationvalue, check)
+ return False, {"success": False, "reason": "Failed condition: %s %s %s because %s" % (sourcevalue, condition["condition"]["value"], destinationvalue, check)}
#sourcevalue = sourcevalue.encode("utf-8")
@@ -1552,7 +1552,7 @@ class AppBase:
check, destinationvalue, is_loop = parse_params(action, fullexecution, condition["destination"])
if check:
- return False, "Failed condition: %s %s %s because %s" % (sourcevalue, condition["condition"]["value"], destinationvalue, check)
+ return False, {"success": False, "reason": "Failed condition: %s %s %s because %s" % (sourcevalue, condition["condition"]["value"], destinationvalue, check)}
#destinationvalue = destinationvalue.encode("utf-8")
destinationvalue = parse_wrapper_start(destinationvalue)
@@ -1593,7 +1593,7 @@ class AppBase:
if not validation:
self.logger.info("Failed condition check for %s %s %s." % (sourcevalue, condition["condition"]["value"], destinationvalue))
- return False, "Failed condition: %s %s %s" % (sourcevalue, condition["condition"]["value"], destinationvalue)
+ return False, {"success": False, "reason": "Failed condition: %s %s %s" % (sourcevalue, condition["condition"]["value"], destinationvalue)}
# Make a general parser here, at least to get param["name"] = param["value"] in maparameter[string]string
diff --git a/backend/go-app/go.sum b/backend/go-app/go.sum
index cc0824a0..21fd33ff 100644
--- a/backend/go-app/go.sum
+++ b/backend/go-app/go.sum
@@ -96,6 +96,8 @@ github.com/frikky/shuffle-shared v0.0.21 h1:xj/XPsXTa2rx41mm4nUc7+2K9RGkq2/mpjSP
github.com/frikky/shuffle-shared v0.0.21/go.mod h1:H7SqOta/EAYnfYuWzwzYSh/oWfF0kgnuaJTQNKQBvoQ=
github.com/frikky/shuffle-shared v0.0.22 h1:TFMcJCNmOOSneMMWbg5dNzp2z6m0aZLROuL+bzVToRE=
github.com/frikky/shuffle-shared v0.0.22/go.mod h1:H7SqOta/EAYnfYuWzwzYSh/oWfF0kgnuaJTQNKQBvoQ=
+github.com/frikky/shuffle-shared v0.0.23 h1:Pnlc2M6fHnFRLFd5K1iLTVv4/t4P04Ri1GJ5CMxzq0U=
+github.com/frikky/shuffle-shared v0.0.23/go.mod h1:H7SqOta/EAYnfYuWzwzYSh/oWfF0kgnuaJTQNKQBvoQ=
github.com/getkin/kin-openapi v0.8.0 h1:a6TQjTqwkyscC4/hShJX7WhCVE+4bi9lzw61XHQW5hE=
github.com/getkin/kin-openapi v0.8.0/go.mod h1:zZQMFkVgRHCdhgb6ihCTIo9dyDZFvX0k/xAKqw1FhPw=
github.com/getkin/kin-openapi v0.52.0 h1:6WqsF5d6PfJ8AscdD+9Rtb2RP2iBWyC7V6GcjssWg7M=
diff --git a/docker-compose.yml b/docker-compose.yml
index 1e208eb2..56fd9a3c 100644
--- a/docker-compose.yml
+++ b/docker-compose.yml
@@ -2,7 +2,7 @@ version: '3'
services:
frontend:
#build: ./frontend
- image: ghcr.io/frikky/shuffle-frontend:0.8.64
+ image: ghcr.io/frikky/shuffle-frontend:0.8.71
container_name: shuffle-frontend
hostname: shuffle-frontend
ports:
@@ -17,7 +17,7 @@ services:
- backend
backend:
#build: ./backend
- image: ghcr.io/frikky/shuffle-backend:0.8.64
+ image: ghcr.io/frikky/shuffle-backend:0.8.71
container_name: shuffle-backend
hostname: ${BACKEND_HOSTNAME}
# Here for debugging:
@@ -47,7 +47,7 @@ services:
- database
orborus:
#build: ./functions/onprem/orborus
- image: ghcr.io/frikky/shuffle-orborus:0.8.64
+ image: ghcr.io/frikky/shuffle-orborus:0.8.71
container_name: shuffle-orborus
hostname: shuffle-orborus
networks:
@@ -56,7 +56,7 @@ services:
- /var/run/docker.sock:/var/run/docker.sock
environment:
- SHUFFLE_APP_SDK_VERSION=0.8.60
- - SHUFFLE_WORKER_VERSION=0.8.70
+ - SHUFFLE_WORKER_VERSION=0.8.71
- ORG_ID=${ORG_ID}
- ENVIRONMENT_NAME=${ENVIRONMENT_NAME}
- BASE_URL=http://${OUTER_HOSTNAME}:${BACKEND_PORT}
diff --git a/frontend/src/App.jsx b/frontend/src/App.jsx
index 011a4c6e..99465936 100644
--- a/frontend/src/App.jsx
+++ b/frontend/src/App.jsx
@@ -13,6 +13,7 @@ import EditWebhook from "./views/EditWebhook";
import AngularWorkflow from "./views/AngularWorkflow";
import Header from './components/Header';
+import theme from './theme'
import Apps from './views/Apps';
import AppCreator from './views/AppCreator';
@@ -44,34 +45,8 @@ if (window.location.protocol == "http:" && window.location.port === "3000") {
//globalUrl = "http://localhost:5002"
}
-const theme = createMuiTheme({
- palette: {
- primary: {
- main: "#f85a3e"
- },
- secondary: {
- main: '#e8eaf6',
- },
- surfaceColor: "#27292d",
- inputColor: "#383B40"
- },
- typography: {
- useNextVariants: true
- },
- overrides: {
- MuiMenu: {
- list: {
- backgroundColor: "#383B40",
- },
- },
- },
-});
-
-
-// FIXME - set client side cookies
const App = (message, props) => {
const [userdata, setUserData] = useState({});
- //const [homePage, ] = useState(true);
const [cookies, setCookie, removeCookie] = useCookies([]);
const [isLoggedIn, setIsLoggedIn] = useState(false);
const [dataset, setDataset] = useState(false);
diff --git a/frontend/src/defaultCytoscapeStyle.js b/frontend/src/defaultCytoscapeStyle.js
index 2732e381..8fd5d326 100644
--- a/frontend/src/defaultCytoscapeStyle.js
+++ b/frontend/src/defaultCytoscapeStyle.js
@@ -47,7 +47,6 @@ const data = [{
css: {
'width': '30px',
'height': '30px',
- 'font-size': '0px',
},
},
{
@@ -118,6 +117,8 @@ const data = [{
css: {
'shape': 'ellipse',
'border-color': '#80deea',
+ 'width': '80px',
+ 'height': '80px',
},
},
{
diff --git a/frontend/src/views/AngularWorkflow.jsx b/frontend/src/views/AngularWorkflow.jsx
index dcc792fd..bb6e1d40 100644
--- a/frontend/src/views/AngularWorkflow.jsx
+++ b/frontend/src/views/AngularWorkflow.jsx
@@ -2777,11 +2777,12 @@ const AngularWorkflow = (props) => {
const [hover, setHover] = React.useState(false)
const maxlen = 24
- var newAppname = app.name.replace("_", " ", -1)
+ var newAppname = app.name
newAppname = newAppname.charAt(0).toUpperCase()+newAppname.substring(1)
if (newAppname.length > maxlen) {
newAppname = newAppname.slice(0, maxlen)+".."
}
+ app.name.replaceAll("_", " ", -1)
//const image = "url("+app.large_image+")"
const image = app.large_image
@@ -2807,13 +2808,17 @@ const AngularWorkflow = (props) => {
- {newAppname}
+ {newAppname}
- Version: {app.app_version}
+
+ Version: {app.app_version}
+
- {app.description}
+
+ {app.description}
+
@@ -2833,43 +2838,52 @@ const AngularWorkflow = (props) => {
return(
-
-
-
-
-
- )
- }}
- fullWidth
- color="primary"
- placeholder={"Search Apps"}
- id="appsearch"
- onBlur={(event) => {
- runSearch(event)
- }}
- />
-
- {visibleApps.map((app, index) => {
- if (app.invalid) {
- return null
- }
-
- return(
-
+
+
+
+
+
)
- })}
-
+ }}
+ fullWidth
+ color="primary"
+ placeholder={"Search Active Apps"}
+ id="appsearch"
+ onBlur={(event) => {
+ runSearch(event)
+ }}
+ />
+ {visibleApps.length > 0 ?
+
+ {visibleApps.map((app, index) => {
+ if (app.invalid) {
+ return null
+ }
+
+ return(
+
+ )
+ })}
+
+ :
+
+
+
+ Loading apps
+
+
+ }
)
@@ -2925,13 +2939,13 @@ const AngularWorkflow = (props) => {
//
const selectedNameChange = (event) => {
//console.log("OLDNAME: ", selectedAction.name)
- event.target.value = event.target.value.replace("(", "")
- event.target.value = event.target.value.replace(")", "")
- event.target.value = event.target.value.replace("$", "")
- event.target.value = event.target.value.replace("#", "")
- event.target.value = event.target.value.replace(".", "")
- event.target.value = event.target.value.replace(",", "")
- event.target.value = event.target.value.replace(" ", "_")
+ event.target.value = event.target.value.replaceAll("(", "")
+ event.target.value = event.target.value.replaceAll(")", "")
+ event.target.value = event.target.value.replaceAll("$", "")
+ event.target.value = event.target.value.replaceAll("#", "")
+ event.target.value = event.target.value.replaceAll(".", "")
+ event.target.value = event.target.value.replaceAll(",", "")
+ event.target.value = event.target.value.replaceAll(" ", "_")
selectedAction.label = event.target.value
setSelectedAction(selectedAction)
@@ -4384,10 +4398,10 @@ const AngularWorkflow = (props) => {
newActionname = data.label
}
// ROFL FIXME - loop
- newActionname = newActionname.replace("_", " ")
- newActionname = newActionname.replace("_", " ")
- newActionname = newActionname.replace("_", " ")
- newActionname = newActionname.replace("_", " ")
+ newActionname = newActionname.replaceAll("_", " ")
+ newActionname = newActionname.replaceAll("_", " ")
+ newActionname = newActionname.replaceAll("_", " ")
+ newActionname = newActionname.replaceAll("_", " ")
newActionname = newActionname.charAt(0).toUpperCase()+newActionname.substring(1)
return (