mirror of
https://github.com/toeverything/AFFiNE.git
synced 2026-02-13 04:48:53 +00:00
28 lines
928 B
TypeScript
28 lines
928 B
TypeScript
import { config } from '@affine/env';
|
|
import {
|
|
createIndexedDBProvider,
|
|
createLocalProviders,
|
|
} from '@affine/workspace/providers';
|
|
import { createBroadCastChannelProvider } from '@affine/workspace/providers';
|
|
import type { Provider } from '@affine/workspace/type';
|
|
|
|
import type { BlockSuiteWorkspace } from '../shared';
|
|
import { createAffineWebSocketProvider } from './providers';
|
|
import { createAffineDownloadProvider } from './providers/affine';
|
|
|
|
export const createAffineProviders = (
|
|
blockSuiteWorkspace: BlockSuiteWorkspace
|
|
): Provider[] => {
|
|
return (
|
|
[
|
|
createAffineDownloadProvider(blockSuiteWorkspace),
|
|
createAffineWebSocketProvider(blockSuiteWorkspace),
|
|
config.enableBroadCastChannelProvider &&
|
|
createBroadCastChannelProvider(blockSuiteWorkspace),
|
|
createIndexedDBProvider(blockSuiteWorkspace),
|
|
] as any[]
|
|
).filter(v => Boolean(v));
|
|
};
|
|
|
|
export { createLocalProviders };
|