UserRegisteredEventHandler.ts 794 B

12345678910111213141516171819202122
  1. import { ProtocolVersion, WorkspaceType } from '@standardnotes/common'
  2. import { DomainEventHandlerInterface, UserRegisteredEvent } from '@standardnotes/domain-events'
  3. import { inject, injectable } from 'inversify'
  4. import TYPES from '../../Bootstrap/Types'
  5. import { CreateWorkspace } from '../UseCase/CreateWorkspace/CreateWorkspace'
  6. @injectable()
  7. export class UserRegisteredEventHandler implements DomainEventHandlerInterface {
  8. constructor(@inject(TYPES.CreateWorkspace) private createWorkspace: CreateWorkspace) {}
  9. async handle(event: UserRegisteredEvent): Promise<void> {
  10. if (event.payload.protocolVersion !== ProtocolVersion.V005) {
  11. return
  12. }
  13. await this.createWorkspace.execute({
  14. ownerUuid: event.payload.userUuid,
  15. type: WorkspaceType.Root,
  16. })
  17. }
  18. }