autumn-js
Version:
Autumn JS Library
45 lines (41 loc) • 864 B
JavaScript
"use client";
import {
AutumnContext,
useAutumnContext
} from "./chunk-OYO7LPVB.mjs";
// src/libraries/react/hooks/usePaywall.tsx
import useSWR from "swr";
var usePaywall = ({
featureId,
entityId
}) => {
const context = useAutumnContext({
AutumnContext,
name: "usePaywall"
});
const enabled = !!featureId && !!context;
const fetcher = async () => {
if (!featureId) {
return { preview: void 0 };
}
const { data: data2, error: error2 } = await context.client.check({
featureId,
withPreview: true
});
if (error2) throw error2;
return data2;
};
const queryKey = [`check`, featureId, entityId];
const { data, error, isLoading } = useSWR(queryKey, fetcher, {
refreshInterval: 0,
enabled
});
return {
data: data?.preview,
error,
isLoading
};
};
export {
usePaywall
};