add server sent events
This commit is contained in:
@@ -1,4 +1,5 @@
|
||||
import { getFilterObject, getSortObject, PageQueryParams } from "../pagination";
|
||||
import { ChangeEvent, dbEvents } from "../realtime";
|
||||
import { generateId } from "../utils/id";
|
||||
import {
|
||||
CreateOrgInput,
|
||||
@@ -15,6 +16,13 @@ export async function createOrg(input: CreateOrgInput, tenantId: string) {
|
||||
...input,
|
||||
});
|
||||
|
||||
dbEvents.emit("change", {
|
||||
type: "insert",
|
||||
collection: "orgs",
|
||||
document: org,
|
||||
requiredClaims: ["org:read"],
|
||||
} as ChangeEvent);
|
||||
|
||||
return org;
|
||||
}
|
||||
|
||||
@@ -70,13 +78,35 @@ export async function updateOrg(
|
||||
{ new: true }
|
||||
);
|
||||
|
||||
if (updateOrgResult) {
|
||||
dbEvents.emit("change", {
|
||||
type: "update",
|
||||
collection: "orgs",
|
||||
document: updateOrgResult,
|
||||
requiredClaims: ["org:read"],
|
||||
} as ChangeEvent);
|
||||
}
|
||||
|
||||
return updateOrgResult;
|
||||
}
|
||||
|
||||
export async function deleteOrg(orgId: string, tenantId: string) {
|
||||
return await orgModel.deleteOne({
|
||||
const res = await orgModel.deleteOne({
|
||||
$and: [{ tenantId: tenantId }, { pid: orgId }],
|
||||
});
|
||||
|
||||
if (res.deletedCount > 0) {
|
||||
dbEvents.emit("change", {
|
||||
type: "delete",
|
||||
collection: "orgs",
|
||||
document: {
|
||||
pid: orgId,
|
||||
},
|
||||
requiredClaims: ["org:read"],
|
||||
} as ChangeEvent);
|
||||
}
|
||||
|
||||
return res;
|
||||
}
|
||||
|
||||
export async function searchOrgs(params: PageQueryParams, tenantId: string) {
|
||||
|
||||
Reference in New Issue
Block a user