import React, { FC, useContext } from 'react'
import EditorToolbar from 'browser/components/Drawer/EditorToolbar'
import SuiteCreateDialog from './SuiteCreateDialog'
import { context as activeTestContext } from 'browser/contexts/active-test'
import { context as suiteModeContext } from 'browser/contexts/suite-mode'
import { context } from 'browser/contexts/suites'
import SuiteDeleteDialog from './SuiteDeleteDialog'
const SuitesToolbar: FC<{ children?: React.ReactNode }> = ({
children = null,
}) => {
const { activeSuiteID } = useContext(activeTestContext)
const suiteMode = useContext(suiteModeContext)
const suites = useContext(context)
const [confirmNew, setConfirmNew] = React.useState(false)
const [confirmDelete, setConfirmDelete] = React.useState(false)
const activeSuite = React.useMemo(
() => suites.find((s) => s.id === activeSuiteID),
[activeSuiteID, suites]
)
return (
<>
setConfirmNew(true)}
removeText="Remove Suite"
onRemove={suites.length > 1 ? () => setConfirmDelete(true) : undefined}
editText="Edit Suites"
onEdit={
suiteMode === 'viewer'
? async () => window.sideAPI.state.toggleSuiteMode('editor')
: undefined
}
viewText="Run Suites"
onView={
suiteMode === 'editor'
? async () => window.sideAPI.state.toggleSuiteMode('viewer')
: undefined
}
>
{children}
>
)
}
export default SuitesToolbar