😽
【NextJs + BetterAuth + Polar】Subcription サブスクサービスの実装【#11 Polar hooks】
【#11 Polar hooks】
YouTube: https://youtu.be/cURYinGx2Gs
今回は、サブスクリプションの状態を取得するhooksを作成します。
hooks/use-active-subscription.ts
import { useQuery } from "@tanstack/react-query";
import { authClient } from "@/lib/auth-client";
export const getSubscription = () => {
return useQuery({
queryKey: ["subscription"],
queryFn: async () => {
const { data } = await authClient.customer.state();
return data;
},
});
};
export const useActiveSubscription = () => {
const { data, isLoading, ...rest } = getSubscription();
const isActiveSubscription =
data?.activeSubscriptions && data?.activeSubscriptions.length > 0;
return {
data,
isActiveSubscription,
isLoading,
subscription: data?.activeSubscriptions?.[0],
...rest,
};
};
Discussion