30 lines
1.1 KiB
TypeScript
30 lines
1.1 KiB
TypeScript
import docNode from './documentNode';
|
|
import downloadNode from './downloadNode';
|
|
import makeFileNode from './makeFileNode';
|
|
import nodeNames from './nodeNames';
|
|
import { PluginNode } from './pluginNode';
|
|
import { SaveToDatacenterNode } from './saveToDatacenter';
|
|
import { SearchDatacenterNode } from './searchDatacenter';
|
|
import sqlNode from './sqlNode';
|
|
import { WorkflowNode } from './workflowNode';
|
|
|
|
export interface CustomNodeOptions {
|
|
handleChosen?: (nodeType: string, updateNodeData: any, value: string) => void;
|
|
}
|
|
export const getCustomNode = async (options: CustomNodeOptions) => {
|
|
const pluginNode = PluginNode({ onChosen: options.handleChosen });
|
|
const workflowNode = WorkflowNode({ onChosen: options.handleChosen });
|
|
const searchDatacenterNode = await SearchDatacenterNode();
|
|
const saveToDatacenterNode = await SaveToDatacenterNode();
|
|
return {
|
|
...docNode,
|
|
...makeFileNode,
|
|
...downloadNode,
|
|
...sqlNode,
|
|
[nodeNames.pluginNode]: pluginNode,
|
|
[nodeNames.workflowNode]: workflowNode,
|
|
[nodeNames.searchDatacenterNode]: searchDatacenterNode,
|
|
[nodeNames.saveToDatacenterNode]: saveToDatacenterNode,
|
|
};
|
|
};
|