diff --git a/src/components/system-prompt-dropdown.tsx b/src/components/system-prompt-dropdown.tsx index 61d071b..8b50112 100644 --- a/src/components/system-prompt-dropdown.tsx +++ b/src/components/system-prompt-dropdown.tsx @@ -1,5 +1,5 @@ -import React, { useEffect, useState } from 'react'; -import { Menu, MenuButton, MenuItems } from '@headlessui/react'; +import React, { Fragment, useEffect, useState } from 'react'; +import { Menu, MenuButton, MenuItem, MenuItems, Transition } from '@headlessui/react'; import { ChevronDownIcon } from '@heroicons/react/20/solid'; import { StorageManager, SystemPresetInterface } from '../utils/StorageManager'; import { ToolPreview } from './tool-preview'; @@ -77,10 +77,9 @@ export default function SystemPromptDropdown({ className }: SystemPromptDropdown return (
- + setIsOpen(true)} onMouseLeave={e => { const target = e.currentTarget; @@ -93,58 +92,74 @@ export default function SystemPromptDropdown({ className }: SystemPromptDropdown {selectedPreset === 'system-init' || !selectedPreset ? 'System Prompt' : selectedPreset} - { - setIsOpen(true); - }} - onMouseLeave={() => { - setIsOpen(false); - }}> -
- {systemPresets.map(preset => { - const isSelected = selectedPreset === preset.name; - return ( -
{ - e.stopPropagation(); - e.preventDefault(); - handleSystemPresetClick(preset); - }} - onMouseEnter={e => { - showToolPreview(e.currentTarget, preset.hbs); - }} - onMouseLeave={() => { - hideToolPreview(); - }}> - - {preset.name} - {isSelected && ( - - - - )} - -
- ); - })} -
-
+ {isOpen && ( + + { + setIsOpen(true); + }} + onMouseLeave={() => { + setIsOpen(false); + }}> +
+ {systemPresets.map((preset, index) => { + const isSelected = selectedPreset === preset.name; + return ( + + {({ active }) => ( + + )} + + ); + })} +
+
+
+ )}
{showPreview && }