UNPKG

infinity-forge

Version:
32 lines 1.52 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.GoogleOAuthProvider = GoogleOAuthProvider; exports.useGoogleOAuth = useGoogleOAuth; var jsx_runtime_1 = require("react/jsx-runtime"); var react_1 = require("react"); var useLoadGsiScript_1 = __importDefault(require("./hooks/useLoadGsiScript.js")); var GoogleOAuthContext = (0, react_1.createContext)(null); function GoogleOAuthProvider(_a) { var clientId = _a.clientId, nonce = _a.nonce, onScriptLoadSuccess = _a.onScriptLoadSuccess, onScriptLoadError = _a.onScriptLoadError, children = _a.children; var scriptLoadedSuccessfully = (0, useLoadGsiScript_1.default)({ nonce: nonce, onScriptLoadSuccess: onScriptLoadSuccess, onScriptLoadError: onScriptLoadError, }); var contextValue = (0, react_1.useMemo)(function () { return ({ clientId: clientId, scriptLoadedSuccessfully: scriptLoadedSuccessfully, }); }, [clientId, scriptLoadedSuccessfully]); return (0, jsx_runtime_1.jsx)(GoogleOAuthContext.Provider, { value: contextValue, children: children }); } function useGoogleOAuth() { var context = (0, react_1.useContext)(GoogleOAuthContext); if (!context) { throw new Error('Google OAuth components must be used within GoogleOAuthProvider'); } return context; } //# sourceMappingURL=GoogleOAuthProvider.js.map