mirror of
https://github.com/docmost/docmost.git
synced 2026-05-17 23:14:07 +08:00
feat(cloud): add find-workspace and email verification endpoints (#2020)
* feat: add find-workspace and email verification endpoints * sync
This commit is contained in:
@@ -27,7 +27,7 @@ import APP_ROUTE, { getPostLoginRedirect } from "@/lib/app-route.ts";
|
||||
import { RESET } from "jotai/utils";
|
||||
import { useTranslation } from "react-i18next";
|
||||
import { isCloud } from "@/lib/config.ts";
|
||||
import { exchangeTokenRedirectUrl } from "@/ee/utils.ts";
|
||||
import { exchangeTokenRedirectUrl, getHostnameUrl } from "@/ee/utils.ts";
|
||||
|
||||
export default function useAuth() {
|
||||
const { t } = useTranslation();
|
||||
@@ -52,9 +52,18 @@ export default function useAuth() {
|
||||
}
|
||||
} catch (err) {
|
||||
setIsLoading(false);
|
||||
console.log(err);
|
||||
|
||||
const message = err.response?.data?.message;
|
||||
if (isCloud() && message?.includes("verify your email")) {
|
||||
const sig = err.response?.data?.emailSignature;
|
||||
navigate(
|
||||
`${APP_ROUTE.AUTH.VERIFY_EMAIL}?email=${encodeURIComponent(data.email)}${sig ? `&sig=${sig}` : ""}`,
|
||||
);
|
||||
return;
|
||||
}
|
||||
|
||||
notifications.show({
|
||||
message: err.response?.data.message,
|
||||
message,
|
||||
color: "red",
|
||||
});
|
||||
}
|
||||
@@ -92,6 +101,17 @@ export default function useAuth() {
|
||||
try {
|
||||
if (isCloud()) {
|
||||
const res = await createWorkspace(data);
|
||||
|
||||
if (res?.requiresEmailVerification) {
|
||||
const hostname = res?.workspace?.hostname;
|
||||
if (hostname) {
|
||||
window.location.href =
|
||||
getHostnameUrl(hostname) +
|
||||
`/verify-email?email=${encodeURIComponent(data.email)}&sig=${res.emailSignature}`;
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
||||
const hostname = res?.workspace?.hostname;
|
||||
const exchangeToken = res?.exchangeToken;
|
||||
if (hostname && exchangeToken) {
|
||||
|
||||
Reference in New Issue
Block a user