feat(editor): Redesign Canvas Chat (#11634)

This commit is contained in:
oleg
2024-11-13 11:05:19 +01:00
committed by GitHub
parent 93a6f858fa
commit a412ab7ebf
41 changed files with 2451 additions and 1063 deletions

View File

@@ -34,7 +34,6 @@ import {
NODE_CREATOR_OPEN_SOURCES,
CHAT_TRIGGER_NODE_TYPE,
MANUAL_CHAT_TRIGGER_NODE_TYPE,
WORKFLOW_LM_CHAT_MODAL_KEY,
AI_NODE_CREATOR_VIEW,
DRAG_EVENT_DATA_KEY,
UPDATE_WEBHOOK_ID_NODE_TYPES,
@@ -455,14 +454,14 @@ export default defineComponent({
)
);
},
canvasChatNode() {
return this.nodes.find((node) => node.type === CHAT_TRIGGER_NODE_TYPE);
},
isManualChatOnly(): boolean {
if (!this.canvasChatNode) return false;
return this.containsChatNodes && this.triggerNodes.length === 1 && !this.pinnedChatNodeData;
},
canvasChatNode() {
return this.nodes.find((node) => node.type === CHAT_TRIGGER_NODE_TYPE);
},
pinnedChatNodeData() {
if (!this.canvasChatNode) return null;
@@ -513,6 +512,9 @@ export default defineComponent({
: (this.projectsStore.currentProject ?? this.projectsStore.personalProject);
return getResourcePermissions(project?.scopes);
},
isChatOpen() {
return this.workflowsStore.isChatPanelOpen;
},
},
watch: {
// Listen to route changes and load the workflow accordingly
@@ -863,7 +865,7 @@ export default defineComponent({
};
this.$telemetry.track('User clicked chat open button', telemetryPayload);
void this.externalHooks.run('nodeView.onOpenChat', telemetryPayload);
this.uiStore.openModal(WORKFLOW_LM_CHAT_MODAL_KEY);
this.workflowsStore.setPanelOpen('chat', !this.workflowsStore.isChatPanelOpen);
},
async onRunWorkflow() {
@@ -4651,6 +4653,7 @@ export default defineComponent({
size="large"
icon="comment"
type="primary"
:outline="isChatOpen === false"
data-test-id="workflow-chat-button"
@click.stop="onOpenChat"
/>