mirror of
https://github.com/DeNNiiInc/dbgate.git
synced 2026-04-19 22:26:01 +00:00
shell script runner
This commit is contained in:
15
packages/web/src/query/ShellToolbar.js
Normal file
15
packages/web/src/query/ShellToolbar.js
Normal file
@@ -0,0 +1,15 @@
|
||||
import React from 'react';
|
||||
import ToolbarButton from '../widgets/ToolbarButton';
|
||||
|
||||
export default function ShellToolbar({ execute, cancel, busy}) {
|
||||
return (
|
||||
<>
|
||||
<ToolbarButton disabled={busy} onClick={execute} icon="fas fa-play">
|
||||
Execute
|
||||
</ToolbarButton>
|
||||
<ToolbarButton disabled={!busy} onClick={cancel} icon="fas fa-times">
|
||||
Cancel
|
||||
</ToolbarButton>
|
||||
</>
|
||||
);
|
||||
}
|
||||
@@ -3,7 +3,7 @@ import React from 'react';
|
||||
import MessagesView from './MessagesView';
|
||||
import useSocket from '../utility/SocketProvider';
|
||||
|
||||
export default function SessionMessagesView({ sessionId, onMessageClick, executeNumber }) {
|
||||
export default function SocketMessagesView({ eventName, onMessageClick = undefined, executeNumber }) {
|
||||
const [displayedMessages, setDisplayedMessages] = React.useState([]);
|
||||
const cachedMessagesRef = React.useRef([]);
|
||||
const socket = useSocket();
|
||||
@@ -27,13 +27,13 @@ export default function SessionMessagesView({ sessionId, onMessageClick, execute
|
||||
}, [executeNumber]);
|
||||
|
||||
React.useEffect(() => {
|
||||
if (sessionId && socket) {
|
||||
socket.on(`session-info-${sessionId}`, handleInfo);
|
||||
if (eventName && socket) {
|
||||
socket.on(eventName, handleInfo);
|
||||
return () => {
|
||||
socket.off(`session-info-${sessionId}`, handleInfo);
|
||||
socket.off(eventName, handleInfo);
|
||||
};
|
||||
}
|
||||
}, [sessionId, socket]);
|
||||
}, [eventName, socket]);
|
||||
|
||||
return <MessagesView items={displayedMessages} onMessageClick={onMessageClick} />;
|
||||
}
|
||||
Reference in New Issue
Block a user