@coin-voyage/paykit
Version:
Seamless crypto payments. Onboard users from any chain, any coin into your app with one click.
13 lines (12 loc) • 664 B
JavaScript
import { jsx as _jsx } from "react/jsx-runtime";
import { ApiClient } from "@coin-voyage/shared/api";
import { useMemo, useState } from "react";
import { ApiContext } from "../components/contexts/api";
import { paykitVersion } from "../utils/version";
import { v4 as uuidv4 } from "uuid";
export function ApiProvider({ apiKey, environment = "production", children }) {
const version = paykitVersion;
const [sessionId] = useState(() => uuidv4());
const api = useMemo(() => new ApiClient({ apiKey, environment, version, sessionId }), [apiKey, environment, sessionId, version]);
return _jsx(ApiContext.Provider, { value: api, children: children });
}