import { TrashIcon } from "@heroicons/react/24/outline"; import { useDispatch, useSelector } from "react-redux"; import styled from "styled-components"; import { Button, defaultBorderRadius, vscBackground, vscForeground, vscInputBackground, } from ".."; import { setDialogMessage, setShowDialog, } from "../../redux/slices/uiStateSlice"; import { RootState } from "../../redux/store"; import HeaderButtonWithText from "../HeaderButtonWithText"; const MiniPillSpan = styled.span` padding: 3px; padding-left: 6px; padding-right: 6px; border-radius: ${defaultBorderRadius}; color: ${vscForeground}; background-color: #fff3; overflow: hidden; font-size: 12px; display: flex; align-items: center; text-align: center; justify-content: center; `; const ContextGroupSelectDiv = styled.div` display: flex; align-items: center; gap: 8px; padding: 8px; border-radius: ${defaultBorderRadius}; background-color: ${vscInputBackground}; color: ${vscForeground}; margin-top: 8px; cursor: pointer; &:hover { background-color: ${vscBackground}; color: ${vscForeground}; } `; function SelectContextGroupDialog() { const dispatch = useDispatch(); const savedContextGroups = useSelector( (state: RootState) => state.serverState.savedContextGroups ); return (

Saved Context Groups

{savedContextGroups && Object.keys(savedContextGroups).length > 0 ? (
{Object.keys(savedContextGroups).map((key: string) => { const contextGroup = savedContextGroups[key]; return ( { dispatch(setDialogMessage(undefined)); dispatch(setShowDialog(false)); // TODO // client?.selectContextGroup(key); }} > {key}: {contextGroup.map((contextItem) => { return ( {contextItem.description.name} ); })} { e.stopPropagation(); // TODO // client?.deleteContextGroup(key); }} > ); })}
) : (
No saved context groups
)}
); } export default SelectContextGroupDialog;