untested WIP
This commit is contained in:
@@ -0,0 +1,64 @@
|
||||
import { Eventra } from "@duxcore/eventra";
|
||||
import UserController from "../controllers/UserController";
|
||||
import {
|
||||
SessionController,
|
||||
SessionTokensObject,
|
||||
} from "../controllers/SessionController";
|
||||
import { RoleController } from "../controllers/RoleController";
|
||||
import { JsonWebTokenError } from "jsonwebtoken";
|
||||
import { User } from "../../generated/prisma/client";
|
||||
|
||||
interface EventTypes {
|
||||
"api:started": () => void;
|
||||
"user:created": (user: UserController) => void;
|
||||
"user:updated": (data: {
|
||||
user: UserController;
|
||||
updatedValues: Partial<User>;
|
||||
}) => void;
|
||||
"user:authenticated": (data: {
|
||||
user: UserController;
|
||||
tokens: SessionTokensObject;
|
||||
}) => void;
|
||||
"session:created": (data: {
|
||||
user: UserController;
|
||||
session: SessionController;
|
||||
}) => void;
|
||||
"session:tokens_generated": (data: {
|
||||
session: SessionController;
|
||||
tokens: SessionTokensObject;
|
||||
}) => void;
|
||||
"session:token_refresh": (data: {
|
||||
session: SessionController;
|
||||
tokens: SessionTokensObject;
|
||||
}) => void;
|
||||
"session:invalidated": (session: SessionController) => void;
|
||||
"session:terminated": (session: SessionController) => void;
|
||||
"role:created": (role: RoleController) => void;
|
||||
"role:deleted": (role: RoleController) => void;
|
||||
"role:updated": (data: {
|
||||
role: RoleController;
|
||||
updateData: Parameters<typeof RoleController.prototype.update>["0"];
|
||||
}) => void;
|
||||
"role:permissions:updated": (data: {
|
||||
previous: string[];
|
||||
previousSigned: string;
|
||||
current: string[];
|
||||
currentSigned: string;
|
||||
action: "set" | "added" | "removed";
|
||||
role: RoleController;
|
||||
}) => void;
|
||||
"role:permissions:verification_error": (data: {
|
||||
currentSigned: string;
|
||||
attemptedVerification: string;
|
||||
err: Error;
|
||||
role: RoleController;
|
||||
}) => void;
|
||||
}
|
||||
|
||||
export const events = new Eventra<EventTypes>();
|
||||
|
||||
export function setupEventDebugger() {
|
||||
events.any((eventName, ...args) => {
|
||||
console.log(`[ Event Debugger ] (${eventName})`);
|
||||
});
|
||||
}
|
||||
Reference in New Issue
Block a user