| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150 | 
							- import { get, post } from './base'
 
- import type {
 
-   EndpointsResponse,
 
- } from '@/app/components/plugins/types'
 
- import {
 
-   useMutation,
 
-   useQuery,
 
-   useQueryClient,
 
- } from '@tanstack/react-query'
 
- const NAME_SPACE = 'endpoints'
 
- export const useEndpointList = (pluginID: string) => {
 
-   return useQuery({
 
-     queryKey: [NAME_SPACE, 'list', pluginID],
 
-     queryFn: () => get<EndpointsResponse>('/workspaces/current/endpoints/list/plugin', {
 
-       params: {
 
-         plugin_id: pluginID,
 
-         page: 1,
 
-         page_size: 100,
 
-       },
 
-     }),
 
-   })
 
- }
 
- export const useInvalidateEndpointList = () => {
 
-   const queryClient = useQueryClient()
 
-   return (pluginID: string) => {
 
-     queryClient.invalidateQueries(
 
-       {
 
-         queryKey: [NAME_SPACE, 'list', pluginID],
 
-       })
 
-   }
 
- }
 
- export const useCreateEndpoint = ({
 
-   onSuccess,
 
-   onError,
 
- }: {
 
-   onSuccess?: () => void
 
-   onError?: (error: any) => void
 
- }) => {
 
-   return useMutation({
 
-     mutationKey: [NAME_SPACE, 'create'],
 
-     mutationFn: (payload: { pluginUniqueID: string, state: Record<string, any> }) => {
 
-       const { pluginUniqueID, state } = payload
 
-       const newName = state.name
 
-       delete state.name
 
-       return post('/workspaces/current/endpoints/create', {
 
-         body: {
 
-           plugin_unique_identifier: pluginUniqueID,
 
-           settings: state,
 
-           name: newName,
 
-         },
 
-       })
 
-     },
 
-     onSuccess,
 
-     onError,
 
-   })
 
- }
 
- export const useUpdateEndpoint = ({
 
-   onSuccess,
 
-   onError,
 
- }: {
 
-   onSuccess?: () => void
 
-   onError?: (error: any) => void
 
- }) => {
 
-   return useMutation({
 
-     mutationKey: [NAME_SPACE, 'update'],
 
-     mutationFn: (payload: { endpointID: string, state: Record<string, any> }) => {
 
-       const { endpointID, state } = payload
 
-       const newName = state.name
 
-       delete state.name
 
-       return post('/workspaces/current/endpoints/update', {
 
-         body: {
 
-           endpoint_id: endpointID,
 
-           settings: state,
 
-           name: newName,
 
-         },
 
-       })
 
-     },
 
-     onSuccess,
 
-     onError,
 
-   })
 
- }
 
- export const useDeleteEndpoint = ({
 
-   onSuccess,
 
-   onError,
 
- }: {
 
-   onSuccess?: () => void
 
-   onError?: (error: any) => void
 
- }) => {
 
-   return useMutation({
 
-     mutationKey: [NAME_SPACE, 'delete'],
 
-     mutationFn: (endpointID: string) => {
 
-       return post('/workspaces/current/endpoints/delete', {
 
-         body: {
 
-           endpoint_id: endpointID,
 
-         },
 
-       })
 
-     },
 
-     onSuccess,
 
-     onError,
 
-   })
 
- }
 
- export const useEnableEndpoint = ({
 
-   onSuccess,
 
-   onError,
 
- }: {
 
-   onSuccess?: () => void
 
-   onError?: (error: any) => void
 
- }) => {
 
-   return useMutation({
 
-     mutationKey: [NAME_SPACE, 'enable'],
 
-     mutationFn: (endpointID: string) => {
 
-       return post('/workspaces/current/endpoints/enable', {
 
-         body: {
 
-           endpoint_id: endpointID,
 
-         },
 
-       })
 
-     },
 
-     onSuccess,
 
-     onError,
 
-   })
 
- }
 
- export const useDisableEndpoint = ({
 
-   onSuccess,
 
-   onError,
 
- }: {
 
-   onSuccess?: () => void
 
-   onError?: (error: any) => void
 
- }) => {
 
-   return useMutation({
 
-     mutationKey: [NAME_SPACE, 'disable'],
 
-     mutationFn: (endpointID: string) => {
 
-       return post('/workspaces/current/endpoints/disable', {
 
-         body: {
 
-           endpoint_id: endpointID,
 
-         },
 
-       })
 
-     },
 
-     onSuccess,
 
-     onError,
 
-   })
 
- }
 
 
  |