mirror of
https://github.com/mountain-loop/yaak.git
synced 2026-03-22 01:19:13 +01:00
Remove useNavigate everywhere, and make request a query param. And convert dialog to Jotai
This commit is contained in:
@@ -1,25 +1,19 @@
|
||||
import { useNavigate } from '@tanstack/react-router';
|
||||
import type { Folder, Workspace } from '@yaakapp-internal/models';
|
||||
import { useMemo } from 'react';
|
||||
import { trackEvent } from '../lib/analytics';
|
||||
import { router } from '../lib/router';
|
||||
import { invokeCmd } from '../lib/tauri';
|
||||
import { getActiveWorkspaceId } from './useActiveWorkspace';
|
||||
import { createFastMutation } from './useFastMutation';
|
||||
import { usePrompt } from './usePrompt';
|
||||
|
||||
function makeCommands({
|
||||
navigate,
|
||||
prompt,
|
||||
}: {
|
||||
navigate: ReturnType<typeof useNavigate>;
|
||||
prompt: ReturnType<typeof usePrompt>;
|
||||
}) {
|
||||
function makeCommands({ prompt }: { prompt: ReturnType<typeof usePrompt> }) {
|
||||
return {
|
||||
createWorkspace: createFastMutation<Workspace, void, Partial<Workspace>>({
|
||||
mutationKey: ['create_workspace'],
|
||||
mutationFn: (patch) => invokeCmd<Workspace>('cmd_update_workspace', { workspace: patch }),
|
||||
onSuccess: async (workspace) => {
|
||||
await navigate({
|
||||
await router.navigate({
|
||||
to: '/workspaces/$workspaceId',
|
||||
params: { workspaceId: workspace.id },
|
||||
});
|
||||
@@ -62,7 +56,6 @@ function makeCommands({
|
||||
}
|
||||
|
||||
export function useCommands() {
|
||||
const navigate = useNavigate();
|
||||
const prompt = usePrompt();
|
||||
return useMemo(() => makeCommands({ navigate, prompt }), [navigate, prompt]);
|
||||
return useMemo(() => makeCommands({ prompt }), [prompt]);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user