feat: node version (#1484)
* feat: node version tip * fix * i18n * init version * fix ts * fix ts * fix ts
This commit is contained in:
@@ -26,6 +26,7 @@ export const appTemplates: (AppItemType & {
|
||||
x: 531.2422736065552,
|
||||
y: -486.7611729549753
|
||||
},
|
||||
version: '481',
|
||||
inputs: [
|
||||
{
|
||||
key: 'welcomeText',
|
||||
@@ -88,6 +89,7 @@ export const appTemplates: (AppItemType & {
|
||||
x: 558.4082376415505,
|
||||
y: 123.72387429194112
|
||||
},
|
||||
version: '481',
|
||||
inputs: [
|
||||
{
|
||||
key: 'userChatInput',
|
||||
@@ -119,6 +121,7 @@ export const appTemplates: (AppItemType & {
|
||||
x: 1097.7317280958762,
|
||||
y: -244.16014496351386
|
||||
},
|
||||
version: '481',
|
||||
inputs: [
|
||||
{
|
||||
key: 'model',
|
||||
@@ -253,6 +256,7 @@ export const appTemplates: (AppItemType & {
|
||||
x: 496.57560693988853,
|
||||
y: -490.7611729549753
|
||||
},
|
||||
version: '481',
|
||||
inputs: [
|
||||
{
|
||||
key: 'welcomeText',
|
||||
@@ -332,6 +336,7 @@ export const appTemplates: (AppItemType & {
|
||||
x: 558.4082376415505,
|
||||
y: 123.72387429194112
|
||||
},
|
||||
version: '481',
|
||||
inputs: [
|
||||
{
|
||||
key: 'userChatInput',
|
||||
@@ -363,6 +368,7 @@ export const appTemplates: (AppItemType & {
|
||||
x: 1097.7317280958762,
|
||||
y: -244.16014496351386
|
||||
},
|
||||
version: '481',
|
||||
inputs: [
|
||||
{
|
||||
key: 'model',
|
||||
@@ -497,6 +503,7 @@ export const appTemplates: (AppItemType & {
|
||||
x: 531.2422736065552,
|
||||
y: -486.7611729549753
|
||||
},
|
||||
version: '481',
|
||||
inputs: [
|
||||
{
|
||||
key: 'welcomeText',
|
||||
@@ -559,6 +566,7 @@ export const appTemplates: (AppItemType & {
|
||||
x: 558.4082376415505,
|
||||
y: 123.72387429194112
|
||||
},
|
||||
version: '481',
|
||||
inputs: [
|
||||
{
|
||||
key: 'userChatInput',
|
||||
@@ -590,6 +598,7 @@ export const appTemplates: (AppItemType & {
|
||||
x: 1638.509551404687,
|
||||
y: -341.0428450861567
|
||||
},
|
||||
version: '481',
|
||||
inputs: [
|
||||
{
|
||||
key: 'model',
|
||||
@@ -709,6 +718,7 @@ export const appTemplates: (AppItemType & {
|
||||
x: 918.5901682164496,
|
||||
y: -227.11542247619582
|
||||
},
|
||||
version: '481',
|
||||
inputs: [
|
||||
{
|
||||
key: 'datasets',
|
||||
@@ -821,6 +831,7 @@ export const appTemplates: (AppItemType & {
|
||||
x: 531.2422736065552,
|
||||
y: -486.7611729549753
|
||||
},
|
||||
version: '481',
|
||||
inputs: [
|
||||
{
|
||||
key: 'welcomeText',
|
||||
@@ -883,6 +894,7 @@ export const appTemplates: (AppItemType & {
|
||||
x: 558.4082376415505,
|
||||
y: 123.72387429194112
|
||||
},
|
||||
version: '481',
|
||||
inputs: [
|
||||
{
|
||||
key: 'userChatInput',
|
||||
@@ -914,6 +926,7 @@ export const appTemplates: (AppItemType & {
|
||||
x: 2701.1267277679685,
|
||||
y: -767.8956312653042
|
||||
},
|
||||
version: '481',
|
||||
inputs: [
|
||||
{
|
||||
key: 'model',
|
||||
@@ -1034,6 +1047,7 @@ export const appTemplates: (AppItemType & {
|
||||
x: 1020.9667229609946,
|
||||
y: -385.0060974413916
|
||||
},
|
||||
version: '481',
|
||||
inputs: [
|
||||
{
|
||||
key: 'model',
|
||||
@@ -1114,6 +1128,7 @@ export const appTemplates: (AppItemType & {
|
||||
x: 1874.9167551056487,
|
||||
y: 434.98431875888207
|
||||
},
|
||||
version: '481',
|
||||
inputs: [
|
||||
{
|
||||
key: 'text',
|
||||
@@ -1139,6 +1154,7 @@ export const appTemplates: (AppItemType & {
|
||||
x: 1851.010152279949,
|
||||
y: -613.3555232387284
|
||||
},
|
||||
version: '481',
|
||||
inputs: [
|
||||
{
|
||||
key: 'datasets',
|
||||
|
||||
@@ -27,6 +27,7 @@ export function form2AppWorkflow(data: AppSimpleEditFormType): WorkflowType {
|
||||
x: 531.2422736065552,
|
||||
y: -486.7611729549753
|
||||
},
|
||||
version: '481',
|
||||
inputs: [
|
||||
{
|
||||
key: NodeInputKeyEnum.welcomeText,
|
||||
@@ -79,6 +80,7 @@ export function form2AppWorkflow(data: AppSimpleEditFormType): WorkflowType {
|
||||
x: 558.4082376415505,
|
||||
y: 123.72387429194112
|
||||
},
|
||||
version: '481',
|
||||
inputs: [
|
||||
{
|
||||
key: 'userChatInput',
|
||||
@@ -115,6 +117,7 @@ export function form2AppWorkflow(data: AppSimpleEditFormType): WorkflowType {
|
||||
x: 1106.3238387960757,
|
||||
y: -350.6030674683474
|
||||
},
|
||||
version: '481',
|
||||
inputs: [
|
||||
{
|
||||
key: 'model',
|
||||
@@ -247,6 +250,7 @@ export function form2AppWorkflow(data: AppSimpleEditFormType): WorkflowType {
|
||||
x: 1638.509551404687,
|
||||
y: -341.0428450861567
|
||||
},
|
||||
version: '481', // [FlowNodeTypeEnum.chatNode]
|
||||
inputs: [
|
||||
{
|
||||
key: 'model',
|
||||
@@ -366,6 +370,7 @@ export function form2AppWorkflow(data: AppSimpleEditFormType): WorkflowType {
|
||||
x: 918.5901682164496,
|
||||
y: -227.11542247619582
|
||||
},
|
||||
version: '481',
|
||||
inputs: [
|
||||
{
|
||||
key: 'datasets',
|
||||
@@ -484,6 +489,7 @@ export function form2AppWorkflow(data: AppSimpleEditFormType): WorkflowType {
|
||||
x: 500,
|
||||
y: 545
|
||||
},
|
||||
version: '481',
|
||||
inputs: [
|
||||
{
|
||||
key: 'datasets',
|
||||
@@ -597,6 +603,7 @@ export function form2AppWorkflow(data: AppSimpleEditFormType): WorkflowType {
|
||||
x: 500 + 500 * (i + 1),
|
||||
y: 545
|
||||
},
|
||||
version: tool.version,
|
||||
inputs: tool.inputs,
|
||||
outputs: tool.outputs
|
||||
}
|
||||
@@ -625,6 +632,7 @@ export function form2AppWorkflow(data: AppSimpleEditFormType): WorkflowType {
|
||||
x: 1062.1738942532802,
|
||||
y: -223.65033022650476
|
||||
},
|
||||
version: '481',
|
||||
inputs: [
|
||||
{
|
||||
key: 'model',
|
||||
|
||||
@@ -39,6 +39,7 @@ export const getGlobalVariableNode = (nodes: FlowNodeItemType[], t: TFunction) =
|
||||
intro: '',
|
||||
unique: true,
|
||||
forbidDelete: true,
|
||||
version: '481',
|
||||
inputs: [],
|
||||
outputs: []
|
||||
};
|
||||
@@ -418,6 +419,7 @@ export const v1Workflow2V2 = (
|
||||
pluginId,
|
||||
pluginType: node.pluginType,
|
||||
parentId: node.parentId,
|
||||
version: 'v2.0',
|
||||
|
||||
inputs,
|
||||
outputs
|
||||
|
||||
@@ -24,7 +24,11 @@ import {
|
||||
} from '@fastgpt/global/core/workflow/utils';
|
||||
import { getSystemVariables } from '../app/utils';
|
||||
import { TFunction } from 'next-i18next';
|
||||
import { ReferenceValueProps } from '@fastgpt/global/core/workflow/type/io';
|
||||
import {
|
||||
FlowNodeInputItemType,
|
||||
FlowNodeOutputItemType,
|
||||
ReferenceValueProps
|
||||
} from '@fastgpt/global/core/workflow/type/io';
|
||||
import { IfElseListItemType } from '@fastgpt/global/core/workflow/template/system/ifElse/type';
|
||||
import { VariableConditionEnum } from '@fastgpt/global/core/workflow/template/system/ifElse/constant';
|
||||
|
||||
@@ -87,7 +91,8 @@ export const storeNode2FlowNode = ({
|
||||
...templateOutput,
|
||||
value: storeOutput.value
|
||||
};
|
||||
})
|
||||
}),
|
||||
version: storeNode.version || '481'
|
||||
};
|
||||
|
||||
return {
|
||||
@@ -298,3 +303,34 @@ export const getWorkflowGlobalVariables = (
|
||||
|
||||
return [...globalVariables, ...systemVariables];
|
||||
};
|
||||
|
||||
export type CombinedItemType = Partial<FlowNodeInputItemType> & Partial<FlowNodeOutputItemType>;
|
||||
|
||||
export const updateFlowNodeVersion = (
|
||||
node: FlowNodeItemType,
|
||||
template: FlowNodeTemplateType
|
||||
): FlowNodeItemType => {
|
||||
function updateArrayBasedOnTemplate<T extends FlowNodeInputItemType | FlowNodeOutputItemType>(
|
||||
nodeArray: T[],
|
||||
templateArray: T[]
|
||||
): T[] {
|
||||
return templateArray.map((templateItem) => {
|
||||
const nodeItem = nodeArray.find((item) => item.key === templateItem.key);
|
||||
if (nodeItem) {
|
||||
return { ...templateItem, ...nodeItem } as T;
|
||||
}
|
||||
return { ...templateItem };
|
||||
});
|
||||
}
|
||||
|
||||
const updatedNode: FlowNodeItemType = { ...node, ...template, name: node.name };
|
||||
|
||||
if (node.inputs && template.inputs) {
|
||||
updatedNode.inputs = updateArrayBasedOnTemplate(node.inputs, template.inputs);
|
||||
}
|
||||
if (node.outputs && template.outputs) {
|
||||
updatedNode.outputs = updateArrayBasedOnTemplate(node.outputs, template.outputs);
|
||||
}
|
||||
|
||||
return updatedNode;
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user