Merge branch 'feat/cloud-sync-saika' into feat/datacenter-dev

This commit is contained in:
DiamondThree
2023-01-11 20:46:34 +08:00
2 changed files with 12 additions and 12 deletions

View File

@@ -176,22 +176,21 @@ export class DataCenter {
} }
public async loadPublicWorkspace(workspaceId: string) { public async loadPublicWorkspace(workspaceId: string) {
const workspaceUnit = this._workspaceUnitCollection.find(workspaceId); // FIXME: hard code for public workspace
assert(workspaceUnit, 'Workspace not found'); const provider = this.providerMap.get('affine');
const provider = this.providerMap.get(workspaceUnit.provider);
assert(provider); assert(provider);
const blocksuiteWorkspace = this._getBlocksuiteWorkspace(workspaceId); const blocksuiteWorkspace = this._getBlocksuiteWorkspace(workspaceId);
await provider.loadPublicWorkspace(blocksuiteWorkspace); await provider.loadPublicWorkspace(blocksuiteWorkspace);
const workspaceUnitForPublic = new WorkspaceUnit({ const workspaceUnitForPublic = new WorkspaceUnit({
id: workspaceUnit.id, id: workspaceId,
name: workspaceUnit.name, name: blocksuiteWorkspace.meta.name,
avatar: workspaceUnit.avatar, avatar: blocksuiteWorkspace.meta.avatar,
owner: workspaceUnit.owner, owner: undefined,
published: workspaceUnit.published, published: true,
provider: workspaceUnit.provider, provider: 'affine',
memberCount: workspaceUnit.memberCount, memberCount: 1,
syncMode: workspaceUnit.syncMode, syncMode: 'core',
}); });
workspaceUnitForPublic.setBlocksuiteWorkspace(blocksuiteWorkspace); workspaceUnitForPublic.setBlocksuiteWorkspace(blocksuiteWorkspace);

View File

@@ -61,7 +61,8 @@ export class WorkspaceUnitCollection {
const add = (workspace: WorkspaceUnitCtorParams) => { const add = (workspace: WorkspaceUnitCtorParams) => {
if (this._workspaceUnitMap.has(workspace.id)) { if (this._workspaceUnitMap.has(workspace.id)) {
throw new Error(`Duplicate workspace id.`); // FIXME: multiple add same workspace
return;
} }
const workspaceUnit = new WorkspaceUnit(workspace); const workspaceUnit = new WorkspaceUnit(workspace);