Make it navigate when you create a project

This commit is contained in:
Frank Noirot
2024-10-04 17:03:23 -04:00
parent 049e487ac4
commit d7fe827a9e
2 changed files with 18 additions and 6 deletions

View File

@ -69,14 +69,25 @@ export const ProjectsContextProvider = ({
projectsMachine.provide({ projectsMachine.provide({
actions: { actions: {
navigateToProject: ({ context, event }) => { navigateToProject: ({ context, event }) => {
if ('data' in event && event.data && 'name' in event.data) { const nameFromEventData =
'data' in event &&
event.data &&
'name' in event.data &&
event.data.name
const nameFromOutputData =
'output' in event &&
event.output &&
'name' in event.output &&
event.output.name
const name = nameFromEventData || nameFromOutputData
if (name) {
let projectPath = let projectPath =
context.defaultDirectory + context.defaultDirectory + window.electron.path.sep + name
window.electron.path.sep +
event.data.name
onProjectOpen( onProjectOpen(
{ {
name: event.data.name, name,
path: projectPath, path: projectPath,
}, },
null null
@ -157,6 +168,7 @@ export const ProjectsContextProvider = ({
return { return {
message: `Successfully created "${name}"`, message: `Successfully created "${name}"`,
name,
} }
}), }),
renameProject: fromPromise(async ({ input }) => { renameProject: fromPromise(async ({ input }) => {

View File

@ -35,7 +35,7 @@ export const projectsMachine = setup({
} }
| { | {
type: 'xstate.done.actor.create-project' type: 'xstate.done.actor.create-project'
output: { message: string } output: { message: string; name: string }
} }
| { | {
type: 'xstate.done.actor.rename-project' type: 'xstate.done.actor.rename-project'