diff --git a/packages/data-center/src/datacenter.ts b/packages/data-center/src/datacenter.ts index d59f090526..8d860ac18c 100644 --- a/packages/data-center/src/datacenter.ts +++ b/packages/data-center/src/datacenter.ts @@ -176,22 +176,21 @@ export class DataCenter { } public async loadPublicWorkspace(workspaceId: string) { - const workspaceUnit = this._workspaceUnitCollection.find(workspaceId); - assert(workspaceUnit, 'Workspace not found'); - const provider = this.providerMap.get(workspaceUnit.provider); + // FIXME: hard code for public workspace + const provider = this.providerMap.get('affine'); assert(provider); const blocksuiteWorkspace = this._getBlocksuiteWorkspace(workspaceId); await provider.loadPublicWorkspace(blocksuiteWorkspace); const workspaceUnitForPublic = new WorkspaceUnit({ - id: workspaceUnit.id, - name: workspaceUnit.name, - avatar: workspaceUnit.avatar, - owner: workspaceUnit.owner, - published: workspaceUnit.published, - provider: workspaceUnit.provider, - memberCount: workspaceUnit.memberCount, - syncMode: workspaceUnit.syncMode, + id: workspaceId, + name: blocksuiteWorkspace.meta.name, + avatar: blocksuiteWorkspace.meta.avatar, + owner: undefined, + published: true, + provider: 'affine', + memberCount: 1, + syncMode: 'core', }); workspaceUnitForPublic.setBlocksuiteWorkspace(blocksuiteWorkspace); diff --git a/packages/data-center/src/workspace-unit-collection.ts b/packages/data-center/src/workspace-unit-collection.ts index dee7aa78fc..fced720649 100644 --- a/packages/data-center/src/workspace-unit-collection.ts +++ b/packages/data-center/src/workspace-unit-collection.ts @@ -61,7 +61,8 @@ export class WorkspaceUnitCollection { const add = (workspace: WorkspaceUnitCtorParams) => { if (this._workspaceUnitMap.has(workspace.id)) { - throw new Error(`Duplicate workspace id.`); + // FIXME: multiple add same workspace + return; } const workspaceUnit = new WorkspaceUnit(workspace);