refactor(core): remove adapter (#5324)

workspace adapter is no longer used.
This commit is contained in:
EYHN
2023-12-25 03:34:22 +00:00
parent 05025bf59a
commit e1bd13a018
9 changed files with 8 additions and 160 deletions
@@ -1,14 +0,0 @@
import { waitForCurrentWorkspaceAtom } from '@affine/workspace/atom';
import { assertExists } from '@blocksuite/global/utils';
import { useAtomValue } from 'jotai';
import type { FC, PropsWithChildren } from 'react';
import { WorkspaceAdapters } from '../adapters/workspace';
export const AdapterProviderWrapper: FC<PropsWithChildren> = ({ children }) => {
const currentWorkspace = useAtomValue(waitForCurrentWorkspaceAtom);
const Provider = WorkspaceAdapters[currentWorkspace.flavour].UI.Provider;
assertExists(Provider);
return <Provider>{children}</Provider>;
};
@@ -1,7 +1,7 @@
import type { WorkspaceMetadata } from '@affine/workspace/metadata';
import { NewWorkspaceSettingDetail } from '../../../../adapters/shared';
import { useIsWorkspaceOwner } from '../../../../hooks/affine/use-is-workspace-owner';
import { WorkspaceSettingDetail } from '../../new-workspace-setting-detail';
export const WorkspaceSetting = ({
workspaceMetadata,
@@ -10,7 +10,7 @@ export const WorkspaceSetting = ({
}) => {
const isOwner = useIsWorkspaceOwner(workspaceMetadata);
return (
<NewWorkspaceSettingDetail
<WorkspaceSettingDetail
workspaceMetadata={workspaceMetadata}
isOwner={isOwner}
/>
@@ -1,58 +0,0 @@
import { pushNotificationAtom } from '@affine/component/notification-center';
import { assertExists } from '@blocksuite/global/utils';
import { GraphQLError } from 'graphql';
import { useSetAtom } from 'jotai';
import type { PropsWithChildren, ReactNode } from 'react';
import { useCallback } from 'react';
import type { SWRConfiguration } from 'swr';
import { SWRConfig } from 'swr';
const cloudConfig: SWRConfiguration = {
suspense: true,
use: [
useSWRNext => (key, fetcher, config) => {
const pushNotification = useSetAtom(pushNotificationAtom);
const fetcherWrapper = useCallback(
async (...args: any[]) => {
assertExists(fetcher);
const d = fetcher(...args);
if (d instanceof Promise) {
return d.catch(e => {
if (
e instanceof GraphQLError ||
(Array.isArray(e) && e[0] instanceof GraphQLError)
) {
const graphQLError = e instanceof GraphQLError ? e : e[0];
pushNotification({
title: 'GraphQL Error',
message: graphQLError.toString(),
key: Date.now().toString(),
type: 'error',
});
} else {
pushNotification({
title: 'Error',
message: e.toString(),
key: Date.now().toString(),
type: 'error',
});
}
throw e;
});
}
return d;
},
[fetcher, pushNotification]
);
return useSWRNext(key, fetcher ? fetcherWrapper : fetcher, config);
},
],
};
export const Provider = (props: PropsWithChildren): ReactNode => {
if (!runtimeConfig.enableCloud) {
return props.children;
}
return <SWRConfig value={cloudConfig}>{props.children}</SWRConfig>;
};