You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

use-data-source-auth-update.ts 1.0KB

123456789101112131415161718192021222324252627282930
  1. import { useCallback } from 'react'
  2. import { useInvalidDataSourceAuth, useInvalidDataSourceListAuth } from '@/service/use-datasource'
  3. import { useInvalidDefaultDataSourceListAuth } from '@/service/use-datasource'
  4. import { useInvalidDataSourceList } from '@/service/use-pipeline'
  5. export const useDataSourceAuthUpdate = ({
  6. pluginId,
  7. provider,
  8. }: {
  9. pluginId: string
  10. provider: string
  11. }) => {
  12. const invalidateDataSourceListAuth = useInvalidDataSourceListAuth()
  13. const invalidDefaultDataSourceListAuth = useInvalidDefaultDataSourceListAuth()
  14. const invalidateDataSourceList = useInvalidDataSourceList()
  15. const invalidateDataSourceAuth = useInvalidDataSourceAuth({
  16. pluginId,
  17. provider,
  18. })
  19. const handleAuthUpdate = useCallback(() => {
  20. invalidateDataSourceListAuth()
  21. invalidDefaultDataSourceListAuth()
  22. invalidateDataSourceList()
  23. invalidateDataSourceAuth()
  24. }, [invalidateDataSourceListAuth, invalidateDataSourceList, invalidateDataSourceAuth, invalidDefaultDataSourceListAuth])
  25. return {
  26. handleAuthUpdate,
  27. }
  28. }