{"version":3,"sources":["../../../../src/lib/api/user.ts"],"sourcesContent":["import {\n  getMembersQueryKey,\n  useInviteMember,\n  useMembers,\n  useRemoveMember,\n  useResendInvite,\n  useRevokeInvite,\n  useUpdateMember,\n} from \"../../api/endpoint.js\";\nimport { keepPreviousData, useQueryClient } from \"@tanstack/react-query\";\nimport { USER_ROW_LIMIT } from \"../constants.js\";\nimport {\n  useUsersManagementContext,\n  type UsersManagementContextType,\n} from \"../users-management-context.js\";\n\nexport const useUsers = (context?: UsersManagementContextType) => {\n  const {\n    state: { pagination, role, searchQuery },\n  } = useUsersManagementContext(context);\n  const limit = USER_ROW_LIMIT;\n  const { before, after } = pagination || {};\n\n  return useMembers(\n    {\n      after: after ?? undefined,\n      before: before ?? undefined,\n      limit: limit.toString(),\n      role: role ?? undefined,\n      search: searchQuery ?? undefined,\n    },\n    {\n      query: {\n        placeholderData: keepPreviousData,\n      },\n    },\n  );\n};\n\nexport const useUpdateUserRole: typeof useUpdateMember = () => {\n  const queryClient = useQueryClient();\n\n  return useUpdateMember({\n    mutation: {\n      onSuccess: () => {\n        queryClient.invalidateQueries({ queryKey: getMembersQueryKey() });\n      },\n    },\n  });\n};\n\nexport const useInviteUser: typeof useInviteMember = () => {\n  const queryClient = useQueryClient();\n\n  return useInviteMember({\n    mutation: {\n      onSuccess: () => {\n        queryClient.invalidateQueries({ queryKey: getMembersQueryKey() });\n      },\n    },\n  });\n};\n\nexport const useDeleteUser = () => {\n  const queryClient = useQueryClient();\n\n  return useRemoveMember({\n    mutation: {\n      onSuccess: () => {\n        queryClient.invalidateQueries({ queryKey: getMembersQueryKey() });\n      },\n    },\n  });\n};\n\nexport const useRevokeUserInvite = () => {\n  const queryClient = useQueryClient();\n\n  return useRevokeInvite({\n    mutation: {\n      onSuccess: () => {\n        queryClient.invalidateQueries({ queryKey: getMembersQueryKey() });\n      },\n    },\n  });\n};\n\nexport const useResendUserInvite = () => {\n  const queryClient = useQueryClient();\n\n  return useResendInvite({\n    mutation: {\n      onSuccess: () => {\n        queryClient.invalidateQueries({ queryKey: getMembersQueryKey() });\n      },\n    },\n  });\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,sBAQO;AACP,yBAAiD;AACjD,uBAA+B;AAC/B,sCAGO;AAEA,MAAM,WAAW,CAAC,YAAyC;AAChE,QAAM;AAAA,IACJ,OAAO,EAAE,YAAY,MAAM,YAAY;AAAA,EACzC,QAAI,2DAA0B,OAAO;AACrC,QAAM,QAAQ;AACd,QAAM,EAAE,QAAQ,MAAM,IAAI,cAAc,CAAC;AAEzC,aAAO;AAAA,IACL;AAAA,MACE,OAAO,SAAS;AAAA,MAChB,QAAQ,UAAU;AAAA,MAClB,OAAO,MAAM,SAAS;AAAA,MACtB,MAAM,QAAQ;AAAA,MACd,QAAQ,eAAe;AAAA,IACzB;AAAA,IACA;AAAA,MACE,OAAO;AAAA,QACL,iBAAiB;AAAA,MACnB;AAAA,IACF;AAAA,EACF;AACF;AAEO,MAAM,oBAA4C,MAAM;AAC7D,QAAM,kBAAc,mCAAe;AAEnC,aAAO,iCAAgB;AAAA,IACrB,UAAU;AAAA,MACR,WAAW,MAAM;AACf,oBAAY,kBAAkB,EAAE,cAAU,oCAAmB,EAAE,CAAC;AAAA,MAClE;AAAA,IACF;AAAA,EACF,CAAC;AACH;AAEO,MAAM,gBAAwC,MAAM;AACzD,QAAM,kBAAc,mCAAe;AAEnC,aAAO,iCAAgB;AAAA,IACrB,UAAU;AAAA,MACR,WAAW,MAAM;AACf,oBAAY,kBAAkB,EAAE,cAAU,oCAAmB,EAAE,CAAC;AAAA,MAClE;AAAA,IACF;AAAA,EACF,CAAC;AACH;AAEO,MAAM,gBAAgB,MAAM;AACjC,QAAM,kBAAc,mCAAe;AAEnC,aAAO,iCAAgB;AAAA,IACrB,UAAU;AAAA,MACR,WAAW,MAAM;AACf,oBAAY,kBAAkB,EAAE,cAAU,oCAAmB,EAAE,CAAC;AAAA,MAClE;AAAA,IACF;AAAA,EACF,CAAC;AACH;AAEO,MAAM,sBAAsB,MAAM;AACvC,QAAM,kBAAc,mCAAe;AAEnC,aAAO,iCAAgB;AAAA,IACrB,UAAU;AAAA,MACR,WAAW,MAAM;AACf,oBAAY,kBAAkB,EAAE,cAAU,oCAAmB,EAAE,CAAC;AAAA,MAClE;AAAA,IACF;AAAA,EACF,CAAC;AACH;AAEO,MAAM,sBAAsB,MAAM;AACvC,QAAM,kBAAc,mCAAe;AAEnC,aAAO,iCAAgB;AAAA,IACrB,UAAU;AAAA,MACR,WAAW,MAAM;AACf,oBAAY,kBAAkB,EAAE,cAAU,oCAAmB,EAAE,CAAC;AAAA,MAClE;AAAA,IACF;AAAA,EACF,CAAC;AACH;","names":[]}