8643 fix sentry error (#8644)
- fixes missing data in event payload when adding a new workspaceMember - add strong typing to database event emitters
This commit is contained in:
@ -1,6 +1,8 @@
|
||||
import { ObjectRecordBaseEvent } from 'src/engine/core-modules/event-emitter/types/object-record.base.event';
|
||||
|
||||
export class ObjectRecordCreateEvent<T> extends ObjectRecordBaseEvent {
|
||||
export class ObjectRecordCreateEvent<
|
||||
T = object,
|
||||
> extends ObjectRecordBaseEvent<T> {
|
||||
properties: {
|
||||
after: T;
|
||||
};
|
||||
|
||||
@ -1,6 +1,8 @@
|
||||
import { ObjectRecordBaseEvent } from 'src/engine/core-modules/event-emitter/types/object-record.base.event';
|
||||
|
||||
export class ObjectRecordDeleteEvent<T> extends ObjectRecordBaseEvent {
|
||||
export class ObjectRecordDeleteEvent<
|
||||
T = object,
|
||||
> extends ObjectRecordBaseEvent<T> {
|
||||
properties: {
|
||||
before: T;
|
||||
};
|
||||
|
||||
@ -1,6 +1,8 @@
|
||||
import { ObjectRecordBaseEvent } from 'src/engine/core-modules/event-emitter/types/object-record.base.event';
|
||||
|
||||
export class ObjectRecordDestroyEvent<T> extends ObjectRecordBaseEvent {
|
||||
export class ObjectRecordDestroyEvent<
|
||||
T = object,
|
||||
> extends ObjectRecordBaseEvent<T> {
|
||||
properties: {
|
||||
before: T;
|
||||
};
|
||||
|
||||
@ -0,0 +1,3 @@
|
||||
export type ObjectRecordDiff<T> = {
|
||||
[K in keyof T]: { before: T[K]; after: T[K] };
|
||||
};
|
||||
@ -1,14 +1,13 @@
|
||||
import { ObjectRecordBaseEvent } from 'src/engine/core-modules/event-emitter/types/object-record.base.event';
|
||||
import { ObjectRecordDiff } from 'src/engine/core-modules/event-emitter/types/object-record-diff';
|
||||
|
||||
type Diff<T> = {
|
||||
[K in keyof T]: { before: T[K]; after: T[K] };
|
||||
};
|
||||
|
||||
export class ObjectRecordUpdateEvent<T> extends ObjectRecordBaseEvent {
|
||||
export class ObjectRecordUpdateEvent<
|
||||
T = object,
|
||||
> extends ObjectRecordBaseEvent<T> {
|
||||
properties: {
|
||||
updatedFields?: string[];
|
||||
before: T;
|
||||
after: T;
|
||||
diff?: Partial<Diff<T>>;
|
||||
diff?: Partial<ObjectRecordDiff<T>>;
|
||||
};
|
||||
}
|
||||
|
||||
@ -1,9 +1,18 @@
|
||||
import { ObjectMetadataInterface } from 'src/engine/metadata-modules/field-metadata/interfaces/object-metadata.interface';
|
||||
|
||||
export class ObjectRecordBaseEvent {
|
||||
import { ObjectRecordDiff } from 'src/engine/core-modules/event-emitter/types/object-record-diff';
|
||||
|
||||
type Properties<T> = {
|
||||
updatedFields?: string[];
|
||||
before?: T;
|
||||
after?: T;
|
||||
diff?: Partial<ObjectRecordDiff<T>>;
|
||||
};
|
||||
|
||||
export class ObjectRecordBaseEvent<T = object> {
|
||||
recordId: string;
|
||||
userId?: string;
|
||||
workspaceMemberId?: string;
|
||||
objectMetadata: ObjectMetadataInterface;
|
||||
properties: any;
|
||||
properties: Properties<T>;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user