955deaf878
- Always show view name input in dropdown - Edit current view name by default - Add focus style - Reset view edit mode on dropdown close Closes #1540
33 lines
1.1 KiB
TypeScript
33 lines
1.1 KiB
TypeScript
import { useResetRecoilState } from 'recoil';
|
|
|
|
import { DropdownButton } from '@/ui/dropdown/components/DropdownButton';
|
|
import { HotkeyScope } from '@/ui/utilities/hotkey/types/HotkeyScope';
|
|
import { viewEditModeState } from '@/ui/view-bar/states/viewEditModeState';
|
|
|
|
import { TableOptionsDropdownId } from '../../constants/TableOptionsDropdownId';
|
|
|
|
import { TableOptionsDropdownButton } from './TableOptionsDropdownButton';
|
|
import { TableOptionsDropdownContent } from './TableOptionsDropdownContent';
|
|
|
|
type TableOptionsDropdownProps = {
|
|
onImport?: () => void;
|
|
customHotkeyScope: HotkeyScope;
|
|
};
|
|
|
|
export function TableOptionsDropdown({
|
|
onImport,
|
|
customHotkeyScope,
|
|
}: TableOptionsDropdownProps) {
|
|
const resetViewEditMode = useResetRecoilState(viewEditModeState);
|
|
|
|
return (
|
|
<DropdownButton
|
|
buttonComponents={<TableOptionsDropdownButton />}
|
|
dropdownHotkeyScope={customHotkeyScope}
|
|
dropdownId={TableOptionsDropdownId}
|
|
dropdownComponents={<TableOptionsDropdownContent onImport={onImport} />}
|
|
onClickOutside={resetViewEditMode}
|
|
/>
|
|
);
|
|
}
|