MCPcopy Create free account
hub / github.com/IQEngine/IQEngine / useDeletePlugin

Function useDeletePlugin

client/src/api/plugin/queries.tsx:113–131  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

111};
112
113export const useDeletePlugin = () => {
114 const client = useQueryClient();
115
116 return useMutation({
117 mutationFn: (plugin: PluginDefinition) => {
118 return axios.delete(`/api/plugins/${plugin.name}`);
119 },
120 onMutate: async (plugin: PluginDefinition) => {
121 await client.cancelQueries(['plugins']);
122 const previousPlugins = client.getQueryData<PluginDefinition[]>(['plugins']);
123 client.setQueryData<PluginDefinition[]>(['plugins'], (old) => old.filter((item) => item.name !== plugin.name));
124 return { previousPlugins };
125 },
126 onError: (err, plugin, context) => {
127 console.error('onError', err);
128 client.setQueryData(['plugins'], context.previousPlugins);
129 },
130 });
131};
132
133export const useCreatePlugin = () => {
134 const client = useQueryClient();

Callers 1

PluginsFunction · 0.90

Calls 1

useQueryClientFunction · 0.85

Tested by

no test coverage detected