dify/web/app/components/workflow/block-selector/hooks.ts

56 lines
1005 B
TypeScript

import { useTranslation } from 'react-i18next'
import { BLOCKS } from './constants'
import {
TabsEnum,
ToolTypeEnum,
} from './types'
export const useBlocks = () => {
const { t } = useTranslation()
return BLOCKS.map((block) => {
return {
...block,
title: t(`workflow.blocks.${block.type}`),
}
})
}
export const useTabs = () => {
const { t } = useTranslation()
return [
{
key: TabsEnum.Blocks,
name: t('workflow.tabs.blocks'),
},
{
key: TabsEnum.Tools,
name: t('workflow.tabs.tools'),
},
]
}
export const useToolTabs = () => {
const { t } = useTranslation()
return [
{
key: ToolTypeEnum.All,
name: t('workflow.tabs.allTool'),
},
{
key: ToolTypeEnum.BuiltIn,
name: t('workflow.tabs.plugin'),
},
{
key: ToolTypeEnum.Custom,
name: t('workflow.tabs.customTool'),
},
{
key: ToolTypeEnum.Workflow,
name: t('workflow.tabs.workflowTool'),
},
]
}