refactor: Move @n8n/chat package to frontend/@n8n (no-changelog) (#13425)

This commit is contained in:
Alex Grozav 2025-02-24 21:19:51 +02:00 committed by GitHub
parent 06572efad3
commit 37d4b00e3f
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
80 changed files with 289 additions and 323 deletions

View file

@ -7,12 +7,12 @@ const trimPackageJson = (packageName) => {
const { scripts, peerDependencies, devDependencies, dependencies, ...packageJson } = require(
filePath,
);
if (packageName === '@n8n/chat') {
if (packageName === 'frontend/@n8n/chat') {
packageJson.dependencies = dependencies;
}
writeFileSync(filePath, JSON.stringify(packageJson, null, 2) + '\n', 'utf-8');
};
trimPackageJson('@n8n/chat');
trimPackageJson('frontend/@n8n/chat');
trimPackageJson('design-system');
trimPackageJson('editor-ui');

View file

@ -42,7 +42,6 @@ component_management:
- component_id: frontend_packages
name: Frontend
paths:
- packages/@n8n/chat/**
- packages/@n8n/codemirror-lang/**
- packages/design-system/**
- packages/editor-ui/**

View file

@ -1,4 +0,0 @@
html, body, #storybook-root, #n8n-chat {
width: 100%;
height: 100%;
}

View file

@ -1,3 +0,0 @@
{
"recommendations": ["Vue.volar", "Vue.vscode-typescript-vue-plugin"]
}

View file

@ -1,238 +0,0 @@
{
"name": "Hosted n8n AI Chat Manual",
"nodes": [
{
"parameters": {
"options": {}
},
"id": "e6043748-44fc-4019-9301-5690fe26c614",
"name": "OpenAI Chat Model",
"type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
"typeVersion": 1,
"position": [
860,
540
],
"credentials": {
"openAiApi": {
"id": "cIIkOhl7tUX1KsL6",
"name": "OpenAi account"
}
}
},
{
"parameters": {
"sessionKey": "={{ $json.sessionId }}"
},
"id": "0a68a59a-8ab6-4fa5-a1ea-b7f99a93109b",
"name": "Window Buffer Memory",
"type": "@n8n/n8n-nodes-langchain.memoryBufferWindow",
"typeVersion": 1,
"position": [
640,
540
]
},
{
"parameters": {
"text": "={{ $json.chatInput }}",
"options": {}
},
"id": "3d4e0fbf-d761-4569-b02e-f5c1eeb830c8",
"name": "AI Agent",
"type": "@n8n/n8n-nodes-langchain.agent",
"typeVersion": 1.1,
"position": [
840,
300
]
},
{
"parameters": {
"dataType": "string",
"value1": "={{ $json.action }}",
"rules": {
"rules": [
{
"value2": "loadPreviousSession",
"outputKey": "loadPreviousSession"
},
{
"value2": "sendMessage",
"outputKey": "sendMessage"
}
]
}
},
"id": "84213c7b-abc7-4f40-9567-cd3484a4ae6b",
"name": "Switch",
"type": "n8n-nodes-base.switch",
"typeVersion": 2,
"position": [
300,
280
]
},
{
"parameters": {
"simplifyOutput": false
},
"id": "3be7f076-98ed-472a-80b6-bf8d9538ac87",
"name": "Chat Messages Retriever",
"type": "@n8n/n8n-nodes-langchain.memoryChatRetriever",
"typeVersion": 1,
"position": [
620,
140
]
},
{
"parameters": {
"options": {}
},
"id": "3417c644-8a91-4524-974a-45b4a46d0e2e",
"name": "Respond to Webhook",
"type": "n8n-nodes-base.respondToWebhook",
"typeVersion": 1,
"position": [
1240,
140
]
},
{
"parameters": {
"public": true,
"authentication": "n8nUserAuth",
"options": {
"loadPreviousSession": "manually",
"responseMode": "responseNode"
}
},
"id": "1b30c239-a819-45b4-b0ae-bdd5b92a5424",
"name": "Chat Trigger",
"type": "@n8n/n8n-nodes-langchain.chatTrigger",
"typeVersion": 1,
"position": [
80,
280
],
"webhookId": "ed3dea26-7d68-42b3-9032-98fe967d441d"
},
{
"parameters": {
"aggregate": "aggregateAllItemData",
"options": {}
},
"id": "79672cf0-686b-41eb-90ae-fd31b6da837d",
"name": "Aggregate",
"type": "n8n-nodes-base.aggregate",
"typeVersion": 1,
"position": [
1000,
140
]
}
],
"pinData": {},
"connections": {
"OpenAI Chat Model": {
"ai_languageModel": [
[
{
"node": "AI Agent",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"Window Buffer Memory": {
"ai_memory": [
[
{
"node": "AI Agent",
"type": "ai_memory",
"index": 0
},
{
"node": "Chat Messages Retriever",
"type": "ai_memory",
"index": 0
}
]
]
},
"Switch": {
"main": [
[
{
"node": "Chat Messages Retriever",
"type": "main",
"index": 0
}
],
[
{
"node": "AI Agent",
"type": "main",
"index": 0
}
]
]
},
"Chat Messages Retriever": {
"main": [
[
{
"node": "Aggregate",
"type": "main",
"index": 0
}
]
]
},
"AI Agent": {
"main": [
[
{
"node": "Respond to Webhook",
"type": "main",
"index": 0
}
]
]
},
"Chat Trigger": {
"main": [
[
{
"node": "Switch",
"type": "main",
"index": 0
}
]
]
},
"Aggregate": {
"main": [
[
{
"node": "Respond to Webhook",
"type": "main",
"index": 0
}
]
]
}
},
"active": true,
"settings": {
"executionOrder": "v1"
},
"versionId": "425c0efe-3aa0-4e0e-8c06-abe12234b1fd",
"id": "1569HF92Y02EUtsU",
"meta": {
"instanceId": "374b43d8b8d6299cc777811a4ad220fc688ee2d54a308cfb0de4450a5233ca9e"
},
"tags": []
}

View file

@ -4,9 +4,9 @@
"baseUrl": ".",
"rootDirs": [
".",
"../../frontend/@n8n/composables/src",
"../design-system/src",
"../@n8n/chat/src"
"../frontend/@n8n/composables/src",
"../frontend/@n8n/chat/src",
"../design-system/src"
],
"outDir": "dist",
"types": [
@ -18,7 +18,7 @@
"@/*": ["./src/*"],
"n8n-design-system*": ["../design-system/src*"],
"@n8n/composables*": ["../frontend/@n8n/composables/src*"],
"@n8n/chat/*": ["../@n8n/chat/src/*"],
"@n8n/chat*": ["../frontend/@n8n/chat/src*"],
"@n8n/api-types*": ["../@n8n/api-types/src*"]
},
// TODO: remove all options below this line

View file

@ -31,11 +31,11 @@ const alias = [
},
{
find: /^@n8n\/chat$/,
replacement: resolve(__dirname, '..', '@n8n', 'chat', 'src', 'index.ts'),
replacement: resolve(__dirname, '..', 'frontend', '@n8n', 'chat', 'src', 'index.ts'),
},
{
find: /^@n8n\/chat\//,
replacement: resolve(__dirname, '..', '@n8n', 'chat', 'src') + '/',
replacement: resolve(__dirname, '..', 'frontend', '@n8n', 'chat', 'src') + '/',
},
{
find: /^@n8n\/composables(.+)$/,

View file

@ -0,0 +1,7 @@
html,
body,
#storybook-root,
#n8n-chat {
width: 100%;
height: 100%;
}

View file

@ -0,0 +1,3 @@
{
"recommendations": ["Vue.volar", "Vue.vscode-typescript-vue-plugin"]
}

View file

Before

Width:  |  Height:  |  Size: 4.2 KiB

After

Width:  |  Height:  |  Size: 4.2 KiB

View file

Before

Width:  |  Height:  |  Size: 46 KiB

After

Width:  |  Height:  |  Size: 46 KiB

View file

Before

Width:  |  Height:  |  Size: 115 KiB

After

Width:  |  Height:  |  Size: 115 KiB

View file

@ -0,0 +1,214 @@
{
"name": "Hosted n8n AI Chat Manual",
"nodes": [
{
"parameters": {
"options": {}
},
"id": "e6043748-44fc-4019-9301-5690fe26c614",
"name": "OpenAI Chat Model",
"type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
"typeVersion": 1,
"position": [860, 540],
"credentials": {
"openAiApi": {
"id": "cIIkOhl7tUX1KsL6",
"name": "OpenAi account"
}
}
},
{
"parameters": {
"sessionKey": "={{ $json.sessionId }}"
},
"id": "0a68a59a-8ab6-4fa5-a1ea-b7f99a93109b",
"name": "Window Buffer Memory",
"type": "@n8n/n8n-nodes-langchain.memoryBufferWindow",
"typeVersion": 1,
"position": [640, 540]
},
{
"parameters": {
"text": "={{ $json.chatInput }}",
"options": {}
},
"id": "3d4e0fbf-d761-4569-b02e-f5c1eeb830c8",
"name": "AI Agent",
"type": "@n8n/n8n-nodes-langchain.agent",
"typeVersion": 1.1,
"position": [840, 300]
},
{
"parameters": {
"dataType": "string",
"value1": "={{ $json.action }}",
"rules": {
"rules": [
{
"value2": "loadPreviousSession",
"outputKey": "loadPreviousSession"
},
{
"value2": "sendMessage",
"outputKey": "sendMessage"
}
]
}
},
"id": "84213c7b-abc7-4f40-9567-cd3484a4ae6b",
"name": "Switch",
"type": "n8n-nodes-base.switch",
"typeVersion": 2,
"position": [300, 280]
},
{
"parameters": {
"simplifyOutput": false
},
"id": "3be7f076-98ed-472a-80b6-bf8d9538ac87",
"name": "Chat Messages Retriever",
"type": "@n8n/n8n-nodes-langchain.memoryChatRetriever",
"typeVersion": 1,
"position": [620, 140]
},
{
"parameters": {
"options": {}
},
"id": "3417c644-8a91-4524-974a-45b4a46d0e2e",
"name": "Respond to Webhook",
"type": "n8n-nodes-base.respondToWebhook",
"typeVersion": 1,
"position": [1240, 140]
},
{
"parameters": {
"public": true,
"authentication": "n8nUserAuth",
"options": {
"loadPreviousSession": "manually",
"responseMode": "responseNode"
}
},
"id": "1b30c239-a819-45b4-b0ae-bdd5b92a5424",
"name": "Chat Trigger",
"type": "@n8n/n8n-nodes-langchain.chatTrigger",
"typeVersion": 1,
"position": [80, 280],
"webhookId": "ed3dea26-7d68-42b3-9032-98fe967d441d"
},
{
"parameters": {
"aggregate": "aggregateAllItemData",
"options": {}
},
"id": "79672cf0-686b-41eb-90ae-fd31b6da837d",
"name": "Aggregate",
"type": "n8n-nodes-base.aggregate",
"typeVersion": 1,
"position": [1000, 140]
}
],
"pinData": {},
"connections": {
"OpenAI Chat Model": {
"ai_languageModel": [
[
{
"node": "AI Agent",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"Window Buffer Memory": {
"ai_memory": [
[
{
"node": "AI Agent",
"type": "ai_memory",
"index": 0
},
{
"node": "Chat Messages Retriever",
"type": "ai_memory",
"index": 0
}
]
]
},
"Switch": {
"main": [
[
{
"node": "Chat Messages Retriever",
"type": "main",
"index": 0
}
],
[
{
"node": "AI Agent",
"type": "main",
"index": 0
}
]
]
},
"Chat Messages Retriever": {
"main": [
[
{
"node": "Aggregate",
"type": "main",
"index": 0
}
]
]
},
"AI Agent": {
"main": [
[
{
"node": "Respond to Webhook",
"type": "main",
"index": 0
}
]
]
},
"Chat Trigger": {
"main": [
[
{
"node": "Switch",
"type": "main",
"index": 0
}
]
]
},
"Aggregate": {
"main": [
[
{
"node": "Respond to Webhook",
"type": "main",
"index": 0
}
]
]
}
},
"active": true,
"settings": {
"executionOrder": "v1"
},
"versionId": "425c0efe-3aa0-4e0e-8c06-abe12234b1fd",
"id": "1569HF92Y02EUtsU",
"meta": {
"instanceId": "374b43d8b8d6299cc777811a4ad220fc688ee2d54a308cfb0de4450a5233ca9e"
},
"tags": []
}

View file

@ -9,10 +9,7 @@
"name": "OpenAI Chat Model",
"type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
"typeVersion": 1,
"position": [
640,
540
],
"position": [640, 540],
"credentials": {
"openAiApi": {
"id": "cIIkOhl7tUX1KsL6",
@ -28,10 +25,7 @@
"name": "Window Buffer Memory",
"type": "@n8n/n8n-nodes-langchain.memoryBufferWindow",
"typeVersion": 1,
"position": [
340,
540
]
"position": [340, 540]
},
{
"parameters": {
@ -42,10 +36,7 @@
"name": "AI Agent",
"type": "@n8n/n8n-nodes-langchain.agent",
"typeVersion": 1.1,
"position": [
620,
300
]
"position": [620, 300]
},
{
"parameters": {
@ -58,10 +49,7 @@
"name": "Chat Trigger",
"type": "@n8n/n8n-nodes-langchain.chatTrigger",
"typeVersion": 1,
"position": [
340,
300
],
"position": [340, 300],
"webhookId": "f406671e-c954-4691-b39a-66c90aa2f103"
}
],

View file

@ -1,5 +1,5 @@
{
"extends": "../../../tsconfig.json",
"extends": "../../../../tsconfig.json",
"compilerOptions": {
"rootDir": "src",
"outDir": "dist",

View file

@ -331,55 +331,6 @@ importers:
specifier: ^0.52.0
version: 0.52.0
packages/@n8n/chat:
dependencies:
'@vueuse/core':
specifier: ^10.11.0
version: 10.11.0(vue@3.5.13(typescript@5.7.2))
highlight.js:
specifier: catalog:frontend
version: 11.9.0
markdown-it-link-attributes:
specifier: ^4.0.1
version: 4.0.1
uuid:
specifier: 'catalog:'
version: 10.0.0
vue:
specifier: catalog:frontend
version: 3.5.13(typescript@5.7.2)
vue-markdown-render:
specifier: catalog:frontend
version: 2.2.1(vue@3.5.13(typescript@5.7.2))
devDependencies:
'@iconify-json/mdi':
specifier: ^1.1.54
version: 1.1.63
'@n8n/storybook':
specifier: workspace:*
version: link:../storybook
'@vitejs/plugin-vue':
specifier: catalog:frontend
version: 5.2.1(vite@6.0.2(@types/node@18.16.16)(jiti@1.21.0)(sass@1.64.1)(terser@5.16.1))(vue@3.5.13(typescript@5.7.2))
'@vitest/coverage-v8':
specifier: catalog:frontend
version: 3.0.5(vitest@3.0.5(@types/debug@4.1.12)(@types/node@18.16.16)(jiti@1.21.0)(jsdom@23.0.1)(sass@1.64.1)(terser@5.16.1))
unplugin-icons:
specifier: ^0.19.0
version: 0.19.0(@vue/compiler-sfc@3.5.13)
vite:
specifier: catalog:frontend
version: 6.0.2(@types/node@18.16.16)(jiti@1.21.0)(sass@1.64.1)(terser@5.16.1)
vite-plugin-dts:
specifier: ^4.3.0
version: 4.3.0(@types/node@18.16.16)(rollup@4.24.0)(typescript@5.7.2)(vite@6.0.2(@types/node@18.16.16)(jiti@1.21.0)(sass@1.64.1)(terser@5.16.1))
vitest:
specifier: catalog:frontend
version: 3.0.5(@types/debug@4.1.12)(@types/node@18.16.16)(jiti@1.21.0)(jsdom@23.0.1)(sass@1.64.1)(terser@5.16.1)
vue-tsc:
specifier: ^2.1.10
version: 2.1.10(patch_hash=e2aee939ccac8a57fe449bfd92bedd8117841579526217bc39aca26c6b8c317f)(typescript@5.7.2)
packages/@n8n/client-oauth2:
dependencies:
axios:
@ -1437,7 +1388,7 @@ importers:
version: link:../@n8n/api-types
'@n8n/chat':
specifier: workspace:*
version: link:../@n8n/chat
version: link:../frontend/@n8n/chat
'@n8n/codemirror-lang':
specifier: workspace:*
version: link:../@n8n/codemirror-lang
@ -1692,6 +1643,55 @@ importers:
specifier: ^2.1.10
version: 2.1.10(patch_hash=e2aee939ccac8a57fe449bfd92bedd8117841579526217bc39aca26c6b8c317f)(typescript@5.7.2)
packages/frontend/@n8n/chat:
dependencies:
'@vueuse/core':
specifier: ^10.11.0
version: 10.11.0(vue@3.5.13(typescript@5.7.2))
highlight.js:
specifier: catalog:frontend
version: 11.9.0
markdown-it-link-attributes:
specifier: ^4.0.1
version: 4.0.1
uuid:
specifier: 'catalog:'
version: 10.0.0
vue:
specifier: catalog:frontend
version: 3.5.13(typescript@5.7.2)
vue-markdown-render:
specifier: catalog:frontend
version: 2.2.1(vue@3.5.13(typescript@5.7.2))
devDependencies:
'@iconify-json/mdi':
specifier: ^1.1.54
version: 1.1.63
'@n8n/storybook':
specifier: workspace:*
version: link:../../../@n8n/storybook
'@vitejs/plugin-vue':
specifier: catalog:frontend
version: 5.2.1(vite@6.0.2(@types/node@18.16.16)(jiti@1.21.0)(sass@1.64.1)(terser@5.16.1))(vue@3.5.13(typescript@5.7.2))
'@vitest/coverage-v8':
specifier: catalog:frontend
version: 3.0.5(vitest@3.0.5(@types/debug@4.1.12)(@types/node@18.16.16)(jiti@1.21.0)(jsdom@23.0.1)(sass@1.64.1)(terser@5.16.1))
unplugin-icons:
specifier: ^0.19.0
version: 0.19.0(@vue/compiler-sfc@3.5.13)
vite:
specifier: catalog:frontend
version: 6.0.2(@types/node@18.16.16)(jiti@1.21.0)(sass@1.64.1)(terser@5.16.1)
vite-plugin-dts:
specifier: ^4.3.0
version: 4.3.0(@types/node@18.16.16)(rollup@4.24.0)(typescript@5.7.2)(vite@6.0.2(@types/node@18.16.16)(jiti@1.21.0)(sass@1.64.1)(terser@5.16.1))
vitest:
specifier: catalog:frontend
version: 3.0.5(@types/debug@4.1.12)(@types/node@18.16.16)(jiti@1.21.0)(jsdom@23.0.1)(sass@1.64.1)(terser@5.16.1)
vue-tsc:
specifier: ^2.1.10
version: 2.1.10(patch_hash=e2aee939ccac8a57fe449bfd92bedd8117841579526217bc39aca26c6b8c317f)(typescript@5.7.2)
packages/frontend/@n8n/composables:
devDependencies:
'@n8n/frontend-eslint-config':
@ -16171,7 +16171,7 @@ snapshots:
'@antfu/install-pkg': 0.1.1
'@antfu/utils': 0.7.10
'@iconify/types': 2.0.0
debug: 4.3.7
debug: 4.4.0
kolorist: 1.8.0
local-pkg: 0.5.0
mlly: 1.7.1
@ -27492,7 +27492,7 @@ snapshots:
'@antfu/install-pkg': 0.3.3
'@antfu/utils': 0.7.10
'@iconify/utils': 2.1.25
debug: 4.3.5
debug: 4.4.0
kolorist: 1.8.0
local-pkg: 0.5.0
unplugin: 1.11.0