diff --git a/client/src/api/docker.jsx b/client/src/api/docker.jsx
index 4ee3da7..bbdb1b5 100644
--- a/client/src/api/docker.jsx
+++ b/client/src/api/docker.jsx
@@ -157,6 +157,22 @@ function createVolume(values) {
}))
}
+function attachTerminal(containerId) {
+ let protocol = 'ws://';
+ if (window.location.protocol === 'https:') {
+ protocol = 'wss://';
+ }
+ return new WebSocket(protocol + window.location.host + '/cosmos/api/servapps/' + containerId + '/terminal/attach');
+}
+
+function createTerminal(containerId) {
+ let protocol = 'ws://';
+ if (window.location.protocol === 'https:') {
+ protocol = 'wss://';
+ }
+ return new WebSocket(protocol + window.location.host + '/cosmos/api/servapps/' + containerId + '/terminal/new');
+}
+
export {
list,
get,
@@ -174,4 +190,6 @@ export {
attachNetwork,
detachNetwork,
createVolume,
+ attachTerminal,
+ createTerminal,
};
\ No newline at end of file
diff --git a/client/src/components/logLine.jsx b/client/src/components/logLine.jsx
index 34b309c..2f07af5 100644
--- a/client/src/components/logLine.jsx
+++ b/client/src/components/logLine.jsx
@@ -56,7 +56,6 @@ const LogLine = ({ message, docker, isMobile }) => {
if(docker) {
let parts = html.match(/\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}\.\d+Z/)
if(!parts) {
- console.error('Could not parse log line', html)
return
;
}
let restString = html.replace(parts[0], '')
diff --git a/client/src/components/responseiveButton.jsx b/client/src/components/responseiveButton.jsx
index 4679061..77c0c48 100644
--- a/client/src/components/responseiveButton.jsx
+++ b/client/src/components/responseiveButton.jsx
@@ -1,7 +1,7 @@
import { Button, useMediaQuery, IconButton } from "@mui/material";
-const ResponsiveButton = ({ children, startIcon, size, style, ...props }) => {
+const ResponsiveButton = ({ children, startIcon, endIcon, size, style, ...props }) => {
const isMobile = useMediaQuery((theme) => theme.breakpoints.down('sm'));
let newStyle = style || {};
if (isMobile) {
@@ -10,8 +10,18 @@ const ResponsiveButton = ({ children, startIcon, size, style, ...props }) => {
}
return (
-