diff --git a/packages/pl-fe/src/queries/accounts/use-antennas.ts b/packages/pl-fe/src/queries/accounts/use-antennas.ts index 1bf7e7d26..068c705b9 100644 --- a/packages/pl-fe/src/queries/accounts/use-antennas.ts +++ b/packages/pl-fe/src/queries/accounts/use-antennas.ts @@ -128,6 +128,168 @@ const useRemoveExcludedAccountsFromAntenna = (antennaId: string) => { }); }; +const useAntennaDomains = (antennaId: string) => { + const client = useClient(); + + return useQuery({ + queryKey: ['antennas', antennaId, 'domains'], + queryFn: () => client.antennas.getAntennaDomains(antennaId), + }); +}; + +const useAddDomainsToAntenna = (antennaId: string) => { + const client = useClient(); + + return useMutation({ + mutationKey: ['antennas', antennaId, 'domains', 'add'], + mutationFn: (domains: Array) => client.antennas.addAntennaDomains(antennaId, domains), + onSettled: () => + queryClient.invalidateQueries({ queryKey: ['antennas', antennaId, 'domains'] }), + }); +}; + +const useRemoveDomainsFromAntenna = (antennaId: string) => { + const client = useClient(); + + return useMutation({ + mutationKey: ['antennas', antennaId, 'domains', 'remove'], + mutationFn: (domains: Array) => + client.antennas.removeAntennaDomains(antennaId, domains), + onSettled: () => + queryClient.invalidateQueries({ queryKey: ['antennas', antennaId, 'domains'] }), + }); +}; + +const useAddExcludedDomainsToAntenna = (antennaId: string) => { + const client = useClient(); + + return useMutation({ + mutationKey: ['antennas', antennaId, 'domains', 'addExcluded'], + mutationFn: (domains: Array) => + client.antennas.addAntennaExcludedDomains(antennaId, domains), + onSettled: () => + queryClient.invalidateQueries({ queryKey: ['antennas', antennaId, 'domains'] }), + }); +}; + +const useRemoveExcludedDomainsFromAntenna = (antennaId: string) => { + const client = useClient(); + + return useMutation({ + mutationKey: ['antennas', antennaId, 'domains', 'removeExcluded'], + mutationFn: (domains: Array) => + client.antennas.removeAntennaExcludedDomains(antennaId, domains), + onSettled: () => + queryClient.invalidateQueries({ queryKey: ['antennas', antennaId, 'domains'] }), + }); +}; + +const useAntennaKeywords = (antennaId: string) => { + const client = useClient(); + + return useQuery({ + queryKey: ['antennas', antennaId, 'keywords'], + queryFn: () => client.antennas.getAntennaKeywords(antennaId), + }); +}; + +const useAddKeywordsToAntenna = (antennaId: string) => { + const client = useClient(); + + return useMutation({ + mutationKey: ['antennas', antennaId, 'keywords', 'add'], + mutationFn: (keywords: Array) => + client.antennas.addAntennaKeywords(antennaId, keywords), + onSettled: () => + queryClient.invalidateQueries({ queryKey: ['antennas', antennaId, 'keywords'] }), + }); +}; + +const useRemoveKeywordsFromAntenna = (antennaId: string) => { + const client = useClient(); + + return useMutation({ + mutationKey: ['antennas', antennaId, 'keywords', 'remove'], + mutationFn: (keywords: Array) => + client.antennas.removeAntennaKeywords(antennaId, keywords), + onSettled: () => + queryClient.invalidateQueries({ queryKey: ['antennas', antennaId, 'keywords'] }), + }); +}; + +const useAddExcludedKeywordsToAntenna = (antennaId: string) => { + const client = useClient(); + + return useMutation({ + mutationKey: ['antennas', antennaId, 'keywords', 'addExcluded'], + mutationFn: (keywords: Array) => + client.antennas.addAntennaExcludedKeywords(antennaId, keywords), + onSettled: () => + queryClient.invalidateQueries({ queryKey: ['antennas', antennaId, 'keywords'] }), + }); +}; + +const useRemoveExcludedKeywordsFromAntenna = (antennaId: string) => { + const client = useClient(); + + return useMutation({ + mutationKey: ['antennas', antennaId, 'keywords', 'removeExcluded'], + mutationFn: (keywords: Array) => + client.antennas.removeAntennaExcludedKeywords(antennaId, keywords), + onSettled: () => + queryClient.invalidateQueries({ queryKey: ['antennas', antennaId, 'keywords'] }), + }); +}; + +const useAntennaTags = (antennaId: string) => { + const client = useClient(); + + return useQuery({ + queryKey: ['antennas', antennaId, 'tags'], + queryFn: () => client.antennas.getAntennaTags(antennaId), + }); +}; + +const useAddTagsToAntenna = (antennaId: string) => { + const client = useClient(); + + return useMutation({ + mutationKey: ['antennas', antennaId, 'tags', 'add'], + mutationFn: (tags: Array) => client.antennas.addAntennaTags(antennaId, tags), + onSettled: () => queryClient.invalidateQueries({ queryKey: ['antennas', antennaId, 'tags'] }), + }); +}; + +const useRemoveTagsFromAntenna = (antennaId: string) => { + const client = useClient(); + + return useMutation({ + mutationKey: ['antennas', antennaId, 'tags', 'remove'], + mutationFn: (tags: Array) => client.antennas.removeAntennaTags(antennaId, tags), + onSettled: () => queryClient.invalidateQueries({ queryKey: ['antennas', antennaId, 'tags'] }), + }); +}; + +const useAddExcludedTagsToAntenna = (antennaId: string) => { + const client = useClient(); + + return useMutation({ + mutationKey: ['antennas', antennaId, 'tags', 'addExcluded'], + mutationFn: (tags: Array) => client.antennas.addAntennaExcludedTags(antennaId, tags), + onSettled: () => queryClient.invalidateQueries({ queryKey: ['antennas', antennaId, 'tags'] }), + }); +}; + +const useRemoveExcludedTagsFromAntenna = (antennaId: string) => { + const client = useClient(); + + return useMutation({ + mutationKey: ['antennas', antennaId, 'tags', 'removeExcluded'], + mutationFn: (tags: Array) => client.antennas.removeAntennaExcludedTags(antennaId, tags), + onSettled: () => queryClient.invalidateQueries({ queryKey: ['antennas', antennaId, 'tags'] }), + }); +}; + export { useAntennas, useAntenna, @@ -140,4 +302,19 @@ export { useAntennaExcludedAccounts, useAddExcludedAccountsToAntenna, useRemoveExcludedAccountsFromAntenna, + useAntennaDomains, + useAddDomainsToAntenna, + useRemoveDomainsFromAntenna, + useAddExcludedDomainsToAntenna, + useRemoveExcludedDomainsFromAntenna, + useAntennaKeywords, + useAddKeywordsToAntenna, + useRemoveKeywordsFromAntenna, + useAddExcludedKeywordsToAntenna, + useRemoveExcludedKeywordsFromAntenna, + useAntennaTags, + useAddTagsToAntenna, + useRemoveTagsFromAntenna, + useAddExcludedTagsToAntenna, + useRemoveExcludedTagsFromAntenna, };