@auth-kit/next
Version:
Next Js Plugin for React Auth Kit
37 lines (36 loc) • 1.24 kB
JavaScript
;
'use client';
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = useNextAuth;
var _react = require("react");
var _navigation = require("next/navigation");
var _AuthContext = require("react-auth-kit/AuthContext");
var _utils = require("react-auth-kit/utils/utils");
var _action = _interopRequireDefault(require("react-auth-kit/utils/action"));
var _AuthKitConfigError = require("react-auth-kit/error/AuthKitConfigError");
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
function useNextAuth() {
const store = (0, _AuthContext.useReactAuthKitStore)();
const {
push
} = (0, _navigation.useRouter)();
const config = (0, _AuthContext.useReactAuthKitConfig)();
const [login, setLogIn] = (0, _react.useState)(false);
let fp;
if (!config.fallbackPath) {
throw new _AuthKitConfigError.AuthKitConfigError('fallbackPath prop must be present in' + ' AuthProvider or RequireAuth component');
} else {
fp = config.fallbackPath;
}
(0, _react.useEffect)(() => {
if (!(0, _utils.isAuthenticated)(store.value)) {
_action.default.doSignOut(store);
push(fp);
} else {
setLogIn(true);
}
}, []);
return login;
}