mirror of
https://github.com/sasjs/server.git
synced 2025-12-12 03:54:34 +00:00
feat: add option for program launch in context menu
This commit is contained in:
@@ -63,6 +63,7 @@ const TreeViewNode = ({
|
|||||||
rename,
|
rename,
|
||||||
defaultExpanded
|
defaultExpanded
|
||||||
}: Props) => {
|
}: Props) => {
|
||||||
|
// const appContext = useContext(AppContext)
|
||||||
const [deleteConfirmationModalOpen, setDeleteConfirmationModalOpen] =
|
const [deleteConfirmationModalOpen, setDeleteConfirmationModalOpen] =
|
||||||
useState(false)
|
useState(false)
|
||||||
const [deleteConfirmationModalMessage, setDeleteConfirmationModalMessage] =
|
const [deleteConfirmationModalMessage, setDeleteConfirmationModalMessage] =
|
||||||
@@ -78,6 +79,23 @@ const TreeViewNode = ({
|
|||||||
mouseY: number
|
mouseY: number
|
||||||
} | null>(null)
|
} | null>(null)
|
||||||
|
|
||||||
|
// const isFileLaunchable = (filename: string) => {
|
||||||
|
// const availableRuntimes = Object.values(appContext.runTimes)
|
||||||
|
|
||||||
|
// }
|
||||||
|
|
||||||
|
const launchProgram = () => {
|
||||||
|
const baseUrl = window.location.origin
|
||||||
|
window.open(`${baseUrl}/SASjsApi/stp/execute?_program=${node.relativePath}`)
|
||||||
|
}
|
||||||
|
|
||||||
|
const launchProgramWithDebug = () => {
|
||||||
|
const baseUrl = window.location.origin
|
||||||
|
window.open(
|
||||||
|
`${baseUrl}/SASjsApi/stp/execute?_program=${node.relativePath}&_debug=131`
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
const handleContextMenu = (event: React.MouseEvent) => {
|
const handleContextMenu = (event: React.MouseEvent) => {
|
||||||
event.preventDefault()
|
event.preventDefault()
|
||||||
event.stopPropagation()
|
event.stopPropagation()
|
||||||
@@ -224,8 +242,8 @@ const TreeViewNode = ({
|
|||||||
: undefined
|
: undefined
|
||||||
}
|
}
|
||||||
>
|
>
|
||||||
{node.isFolder && (
|
{node.isFolder ? (
|
||||||
<div>
|
<>
|
||||||
<MenuItem onClick={handleNewFolderItemClick}>Add Folder</MenuItem>
|
<MenuItem onClick={handleNewFolderItemClick}>Add Folder</MenuItem>
|
||||||
<MenuItem
|
<MenuItem
|
||||||
disabled={!node.relativePath}
|
disabled={!node.relativePath}
|
||||||
@@ -233,14 +251,21 @@ const TreeViewNode = ({
|
|||||||
>
|
>
|
||||||
Add File
|
Add File
|
||||||
</MenuItem>
|
</MenuItem>
|
||||||
</div>
|
</>
|
||||||
|
) : (
|
||||||
|
<>
|
||||||
|
<MenuItem onClick={launchProgram}>Launch</MenuItem>
|
||||||
|
<MenuItem onClick={launchProgramWithDebug}>
|
||||||
|
Launch and Debug
|
||||||
|
</MenuItem>
|
||||||
|
</>
|
||||||
|
)}
|
||||||
|
{!!node.relativePath && (
|
||||||
|
<>
|
||||||
|
<MenuItem onClick={handleRenameItemClick}>Rename</MenuItem>
|
||||||
|
<MenuItem onClick={handleDeleteItemClick}>Delete</MenuItem>
|
||||||
|
</>
|
||||||
)}
|
)}
|
||||||
<MenuItem disabled={!node.relativePath} onClick={handleRenameItemClick}>
|
|
||||||
Rename
|
|
||||||
</MenuItem>
|
|
||||||
<MenuItem disabled={!node.relativePath} onClick={handleDeleteItemClick}>
|
|
||||||
Delete
|
|
||||||
</MenuItem>
|
|
||||||
</Menu>
|
</Menu>
|
||||||
</div>
|
</div>
|
||||||
)
|
)
|
||||||
|
|||||||
Reference in New Issue
Block a user