mirror of
https://github.com/mountain-loop/yaak.git
synced 2026-02-25 09:04:57 +01:00
26 lines
680 B
TypeScript
26 lines
680 B
TypeScript
import { useMutation } from '@tanstack/react-query';
|
|
import { invoke } from '@tauri-apps/api';
|
|
import type { SaveDialogOptions } from '@tauri-apps/api/dialog';
|
|
import { save } from '@tauri-apps/api/dialog';
|
|
import { useActiveWorkspaceId } from './useActiveWorkspaceId';
|
|
|
|
const saveArgs: SaveDialogOptions = {
|
|
title: 'Export Data',
|
|
defaultPath: 'yaak-export.json',
|
|
};
|
|
|
|
export function useExportData() {
|
|
const workspaceId = useActiveWorkspaceId();
|
|
|
|
return useMutation({
|
|
mutationFn: async () => {
|
|
const rootDir = await save(saveArgs);
|
|
if (rootDir == null) {
|
|
return;
|
|
}
|
|
|
|
await invoke('export_data', { workspaceId, rootDir });
|
|
},
|
|
});
|
|
}
|