refactor: remove package @affine/datacenter (#1705)

This commit is contained in:
Himself65
2023-03-27 17:48:22 -05:00
committed by GitHub
parent 021bf6534b
commit ed29c5fbd9
87 changed files with 187 additions and 5231 deletions

View File

@@ -1,6 +1,6 @@
import { displayFlex, styled } from '@affine/component';
import { Button } from '@affine/component';
import type { Permission } from '@affine/datacenter';
import type { Permission } from '@affine/workspace/affine/api';
import {
SucessfulDuotoneIcon,
UnsucessfulDuotoneIcon,

View File

@@ -1,4 +1,11 @@
import { useTranslation } from '@affine/i18n';
import { currentAffineUserAtom } from '@affine/workspace/affine/atom';
import {
getLoginStorage,
parseIdToken,
setLoginStorage,
SignMethod,
} from '@affine/workspace/affine/login';
import type { SettingPanel, WorkspaceRegistry } from '@affine/workspace/type';
import {
settingPanel,
@@ -7,7 +14,7 @@ import {
} from '@affine/workspace/type';
import { SettingsIcon } from '@blocksuite/icons';
import { assertExists } from '@blocksuite/store';
import { useAtom } from 'jotai';
import { useAtom, useSetAtom } from 'jotai';
import { atomWithStorage } from 'jotai/utils';
import Head from 'next/head';
import { useRouter } from 'next/router';
@@ -16,6 +23,7 @@ import React, { useCallback, useEffect } from 'react';
import { Unreachable } from '../../../components/affine/affine-error-eoundary';
import { PageLoading } from '../../../components/pure/loading';
import { WorkspaceTitle } from '../../../components/pure/workspace-title';
import { affineAuth } from '../../../hooks/affine/use-affine-log-in';
import { useCurrentWorkspace } from '../../../hooks/current/use-current-workspace';
import { useSyncRouterWithCurrentWorkspace } from '../../../hooks/use-sync-router-with-current-workspace';
import { useTransformWorkspace } from '../../../hooks/use-transform-workspace';
@@ -23,7 +31,6 @@ import { useWorkspacesHelper } from '../../../hooks/use-workspaces';
import { WorkspaceLayout } from '../../../layouts';
import { WorkspacePlugins } from '../../../plugins';
import type { NextPageWithLayout } from '../../../shared';
import { apis } from '../../../shared/apis';
const settingPanelAtom = atomWithStorage<SettingPanel>(
'workspaceId',
@@ -101,15 +108,20 @@ const SettingPage: NextPageWithLayout = () => {
return helper.deleteWorkspace(workspaceId);
}, [currentWorkspace, helper]);
const transformWorkspace = useTransformWorkspace();
const setUser = useSetAtom(currentAffineUserAtom);
const onTransformWorkspace = useCallback(
async <From extends WorkspaceFlavour, To extends WorkspaceFlavour>(
from: From,
to: To,
workspace: WorkspaceRegistry[From]
): Promise<void> => {
const needRefresh = to === WorkspaceFlavour.AFFINE && !apis.auth.isLogin;
const needRefresh = to === WorkspaceFlavour.AFFINE && !getLoginStorage();
if (needRefresh) {
await apis.signInWithGoogle();
const response = await affineAuth.generateToken(SignMethod.Google);
if (response) {
setLoginStorage(response);
setUser(parseIdToken(response.token));
}
}
const workspaceId = await transformWorkspace(from, to, workspace);
await router.replace({
@@ -119,11 +131,8 @@ const SettingPage: NextPageWithLayout = () => {
workspaceId,
},
});
if (needRefresh) {
router.reload();
}
},
[router, transformWorkspace]
[router, setUser, transformWorkspace]
);
if (!router.isReady) {
return <PageLoading />;