您最多选择25个主题 主题必须以字母或数字开头,可以包含连字符 (-),并且长度不得超过35个字符

123456789101112131415161718192021222324252627282930313233343536
  1. import type { Tool } from '@/app/components/tools/types'
  2. import type { DataSourceItem } from './types'
  3. export const transformDataSourceToTool = (dataSourceItem: DataSourceItem) => {
  4. return {
  5. id: dataSourceItem.plugin_id,
  6. provider: dataSourceItem.provider,
  7. name: dataSourceItem.provider,
  8. author: dataSourceItem.declaration.identity.author,
  9. description: dataSourceItem.declaration.identity.description,
  10. icon: dataSourceItem.declaration.identity.icon,
  11. label: dataSourceItem.declaration.identity.label,
  12. type: dataSourceItem.declaration.provider_type,
  13. team_credentials: {},
  14. allow_delete: true,
  15. is_team_authorization: dataSourceItem.is_authorized,
  16. is_authorized: dataSourceItem.is_authorized,
  17. labels: dataSourceItem.declaration.identity.tags || [],
  18. plugin_id: dataSourceItem.plugin_id,
  19. tools: dataSourceItem.declaration.datasources.map((datasource) => {
  20. return {
  21. name: datasource.identity.name,
  22. author: datasource.identity.author,
  23. label: datasource.identity.label,
  24. description: datasource.description,
  25. parameters: datasource.parameters,
  26. labels: [],
  27. output_schema: datasource.output_schema,
  28. } as Tool
  29. }),
  30. credentialsSchema: dataSourceItem.declaration.credentials_schema || [],
  31. meta: {
  32. version: '',
  33. },
  34. }
  35. }