Skip to content

Commit

Permalink
Redirect to conversation on create (microsoft#97)
Browse files Browse the repository at this point in the history
  • Loading branch information
markwaddle authored Oct 7, 2024
1 parent e1bfd2b commit 1f8899f
Show file tree
Hide file tree
Showing 2 changed files with 21 additions and 2 deletions.
6 changes: 5 additions & 1 deletion workbench-app/src/routes/AssistantEditor.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
import { useAccount } from '@azure/msal-react';
import { Title3, Toolbar, makeStyles, shorthands, tokens } from '@fluentui/react-components';
import React from 'react';
import { useParams } from 'react-router-dom';
import { useNavigate, useParams } from 'react-router-dom';
import { AppView } from '../components/App/AppView';
import { Loading } from '../components/App/Loading';
import { AssistantDelete } from '../components/Assistants/AssistantDelete';
Expand Down Expand Up @@ -70,6 +70,7 @@ export const AssistantEditor: React.FC = () => {
const [createConversationMessage] = useCreateConversationMessageMutation();
const account = useAccount();
const siteUtility = useSiteUtility();
const navigate = useNavigate();

if (assistantConversationsError) {
const errorMessage = JSON.stringify(assistantConversationsError);
Expand Down Expand Up @@ -128,6 +129,9 @@ export const AssistantEditor: React.FC = () => {

// add assistant to conversation
await addConversationParticipant({ conversationId: conversation.id, participantId: assistantId });

// navigate to conversation
navigate(`/conversation/${conversation.id}`);
};

if (isLoadingAssistant || isLoadingAssistantConversations || !assistant) {
Expand Down
17 changes: 16 additions & 1 deletion workbench-app/src/routes/Dashboard.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@

import { makeStyles, tokens } from '@fluentui/react-components';
import React from 'react';
import { useNavigate } from 'react-router-dom';
import { AppMenu } from '../components/App/AppMenu';
import { AppView } from '../components/App/AppView';
import { ExperimentalNotice } from '../components/App/ExperimentalNotice';
Expand All @@ -11,6 +12,7 @@ import { MyConversations } from '../components/Conversations/MyConversations';
import { MyWorkflows } from '../components/Workflows/MyWorkflows';
import { useLocalUserAccount } from '../libs/useLocalUserAccount';
import { useSiteUtility } from '../libs/useSiteUtility';
import { Conversation } from '../models/Conversation';
import { useGetAssistantsQuery, useGetConversationsQuery } from '../services/workbench';
import { useGetWorkflowDefinitionsQuery } from '../services/workbench/workflow';

Expand All @@ -36,6 +38,7 @@ export const Dashboard: React.FC = () => {
isLoading: isLoadingWorkflowDefinitions,
} = useGetWorkflowDefinitionsQuery();
const { getUserId } = useLocalUserAccount();
const navigate = useNavigate();

const siteUtility = useSiteUtility();
siteUtility.setDocumentTitle('Dashboard');
Expand All @@ -55,6 +58,13 @@ export const Dashboard: React.FC = () => {
throw new Error(`Error loading workflow definitions: ${errorMessage}`);
}

const handleConversationCreate = React.useCallback(
(conversation: Conversation) => {
navigate(`/conversation/${conversation.id}`);
},
[navigate],
);

const appMenuAction = <AppMenu />;

if (isLoadingAssistants || isLoadingConversations || isLoadingWorkflowDefinitions) {
Expand All @@ -74,12 +84,17 @@ export const Dashboard: React.FC = () => {
<div className={classes.root}>
<ExperimentalNotice />
<MyAssistants assistants={assistants} />
<MyConversations conversations={myConversations} participantId="me" />
<MyConversations
conversations={myConversations}
participantId="me"
onCreate={handleConversationCreate}
/>
{conversationsSharedWithMe.length > 0 && (
<MyConversations
title="Conversations Shared with Me"
conversations={conversationsSharedWithMe}
participantId="me"
onCreate={handleConversationCreate}
/>
)}
<MyWorkflows workflowDefinitions={workflowDefinitions} />
Expand Down

0 comments on commit 1f8899f

Please sign in to comment.