mirror of
https://github.com/mountain-loop/yaak.git
synced 2026-03-25 02:41:21 +01:00
Add .oxfmtignore to skip generated bindings and wasm-pack output. Add npm format script, update DEVELOPMENT.md for Vite+ toolchain, and format all non-generated files with oxfmt. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
34 lines
1.1 KiB
TypeScript
34 lines
1.1 KiB
TypeScript
import { createWorkspaceModel } from "@yaakapp-internal/models";
|
|
import { jotaiStore } from "../lib/jotai";
|
|
import { showPrompt } from "../lib/prompt";
|
|
import { setWorkspaceSearchParams } from "../lib/setWorkspaceSearchParams";
|
|
import { activeWorkspaceIdAtom } from "./useActiveWorkspace";
|
|
import { useFastMutation } from "./useFastMutation";
|
|
|
|
export function useCreateCookieJar() {
|
|
return useFastMutation({
|
|
mutationKey: ["create_cookie_jar"],
|
|
mutationFn: async () => {
|
|
const workspaceId = jotaiStore.get(activeWorkspaceIdAtom);
|
|
if (workspaceId == null) {
|
|
throw new Error("Cannot create cookie jar when there's no active workspace");
|
|
}
|
|
|
|
const name = await showPrompt({
|
|
id: "new-cookie-jar",
|
|
title: "New CookieJar",
|
|
placeholder: "My Jar",
|
|
confirmText: "Create",
|
|
label: "Name",
|
|
defaultValue: "My Jar",
|
|
});
|
|
if (name == null) return null;
|
|
|
|
return createWorkspaceModel({ model: "cookie_jar", workspaceId, name });
|
|
},
|
|
onSuccess: async (cookieJarId) => {
|
|
setWorkspaceSearchParams({ cookie_jar_id: cookieJarId });
|
|
},
|
|
});
|
|
}
|