mirror of
https://github.com/standardnotes/server
synced 2026-10-20 21:03:36 -04:00
99 lines
2.4 KiB
TypeScript
99 lines
2.4 KiB
TypeScript
import {
|
|
UserFileRemovedEvent,
|
|
UserFileUploadedEvent,
|
|
DomainEventService,
|
|
SharedVaultFileUploadedEvent,
|
|
SharedVaultFileRemovedEvent,
|
|
} from '@standardnotes/domain-events'
|
|
import { TimerInterface } from '@standardnotes/time'
|
|
import { inject, injectable } from 'inversify'
|
|
|
|
import TYPES from '../../Bootstrap/Types'
|
|
import { DomainEventFactoryInterface } from './DomainEventFactoryInterface'
|
|
|
|
@injectable()
|
|
export class DomainEventFactory implements DomainEventFactoryInterface {
|
|
constructor(@inject(TYPES.Timer) private timer: TimerInterface) {}
|
|
|
|
createUserFileRemovedEvent(payload: {
|
|
userUuid: string
|
|
filePath: string
|
|
fileName: string
|
|
fileByteSize: number
|
|
regularSubscriptionUuid: string
|
|
}): UserFileRemovedEvent {
|
|
return {
|
|
type: 'USER_FILE_REMOVED',
|
|
createdAt: this.timer.getUTCDate(),
|
|
meta: {
|
|
correlation: {
|
|
userIdentifier: payload.userUuid,
|
|
userIdentifierType: 'uuid',
|
|
},
|
|
origin: DomainEventService.Files,
|
|
},
|
|
payload,
|
|
}
|
|
}
|
|
|
|
createUserFileUploadedEvent(payload: {
|
|
userUuid: string
|
|
filePath: string
|
|
fileName: string
|
|
fileByteSize: number
|
|
}): UserFileUploadedEvent {
|
|
return {
|
|
type: 'USER_FILE_UPLOADED',
|
|
createdAt: this.timer.getUTCDate(),
|
|
meta: {
|
|
correlation: {
|
|
userIdentifier: payload.userUuid,
|
|
userIdentifierType: 'uuid',
|
|
},
|
|
origin: DomainEventService.Files,
|
|
},
|
|
payload,
|
|
}
|
|
}
|
|
|
|
createSharedVaultFileUploadedEvent(payload: {
|
|
sharedVaultUuid: string
|
|
filePath: string
|
|
fileName: string
|
|
fileByteSize: number
|
|
}): SharedVaultFileUploadedEvent {
|
|
return {
|
|
type: 'SHARED_VAULT_FILE_UPLOADED',
|
|
createdAt: this.timer.getUTCDate(),
|
|
meta: {
|
|
correlation: {
|
|
userIdentifier: payload.sharedVaultUuid,
|
|
userIdentifierType: 'uuid',
|
|
},
|
|
origin: DomainEventService.Files,
|
|
},
|
|
payload,
|
|
}
|
|
}
|
|
|
|
createSharedVaultFileRemovedEvent(payload: {
|
|
sharedVaultUuid: string
|
|
filePath: string
|
|
fileName: string
|
|
fileByteSize: number
|
|
}): SharedVaultFileRemovedEvent {
|
|
return {
|
|
type: 'SHARED_VAULT_FILE_REMOVED',
|
|
createdAt: this.timer.getUTCDate(),
|
|
meta: {
|
|
correlation: {
|
|
userIdentifier: payload.sharedVaultUuid,
|
|
userIdentifierType: 'uuid',
|
|
},
|
|
origin: DomainEventService.Files,
|
|
},
|
|
payload,
|
|
}
|
|
}
|
|
}
|