@nerdlat/auth
Version:
Authentication library similar to Clerk for React and Express applications
21 lines (20 loc) • 732 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.useAuth = useAuth;
const react_1 = require("react");
const callbackHandler_1 = require("../services/callbackHandler");
function useAuth() {
const [user, setUser] = (0, react_1.useState)(null);
const [isLoading, setIsLoading] = (0, react_1.useState)(false);
const signIn = (provider) => {
return new Promise((resolve) => {
callbackHandler_1.callbackHandler.registerCallback(provider, (data) => {
setUser(data);
resolve(data);
});
// open popup etc.
});
};
const signOut = () => setUser(null);
return { user, isLoading, signIn, signOut };
}