@deep-foundation/deepcase
Version:
[](https://gitpod.io/#https://github.com/deep-foundation/deepcase) [](https://discord.gg/deep-
48 lines • 2.64 kB
JavaScript
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
import { Fragment as _Fragment, jsx as _jsx } from "react/jsx-runtime";
import { useDeep } from "@deep-foundation/deeplinks/imports/client";
import { useTokenController } from "@deep-foundation/deeplinks/imports/react-token";
import { useLocalStore } from "@deep-foundation/store/local";
import Debug from 'debug';
import React, { useEffect, useState } from "react";
import { useSpaceId } from "./hooks";
const debug = Debug('deepcase:auto-guest');
export const AutoGuest = React.memo(function AutoGuest({ children, }) {
const deep = useDeep();
const [token] = useTokenController();
const [spaceId, setSpaceId] = useSpaceId();
const [isAuth, setIsAuth] = useState(false);
const [t] = useLocalStore('dc-dg-token', '');
useEffect(() => {
const isAuth = !!((deep === null || deep === void 0 ? void 0 : deep.linkId) && token && token === deep.token);
debug('useCheckAuth', 'token', token, 'deep.token', deep === null || deep === void 0 ? void 0 : deep.token, 'isAuth', isAuth);
if (isAuth)
(() => __awaiter(this, void 0, void 0, function* () {
var _a;
const result = yield deep.select({ id: deep.linkId });
if (!((_a = result === null || result === void 0 ? void 0 : result.data) === null || _a === void 0 ? void 0 : _a.length)) {
debug(`user ${deep.linkId} invalid`);
deep.logout();
}
else {
debug(`user ${deep.linkId} valid`);
}
}))();
if (!token)
(() => __awaiter(this, void 0, void 0, function* () {
const g = yield deep.guest();
console.log('g', g);
}))();
setIsAuth(isAuth);
}, [token, deep === null || deep === void 0 ? void 0 : deep.linkId]);
return _jsx(_Fragment, { children: isAuth ? children : null });
});
//# sourceMappingURL=auto-guest.js.map