mirror of
https://github.com/lucaspalomodevelop/auth-tools.git
synced 2026-03-20 01:06:09 +00:00
29 lines
994 B
TypeScript
29 lines
994 B
TypeScript
import { InterceptEventCallbacks, UseEventCallbacks } from "@auth-tools/base";
|
|
import { AuthServerInterceptEvents, AuthServerUseEvents } from "./auth";
|
|
import { LogFunction } from "@auth-tools/logger";
|
|
|
|
//for an undefined use event
|
|
export function undefinedUseEvent<
|
|
Event extends keyof AuthServerUseEvents,
|
|
Return extends AuthServerUseEvents[Event]["return"]
|
|
>(
|
|
event: Event,
|
|
returnData: Return,
|
|
log: LogFunction
|
|
): UseEventCallbacks<AuthServerUseEvents>[Event] {
|
|
return (() => {
|
|
//complain about unset use event callback
|
|
log("error", `The use "${event}" event is not defined!`);
|
|
return { ...returnData, serverError: true };
|
|
}) as UseEventCallbacks<AuthServerUseEvents>[Event];
|
|
}
|
|
|
|
//for an undefined intercept event
|
|
export function undefinedInterceptEvent<
|
|
Event extends keyof AuthServerInterceptEvents
|
|
>(): InterceptEventCallbacks<AuthServerInterceptEvents>[Event] {
|
|
return () => {
|
|
return { serverError: false, intercepted: false, interceptCode: 0 };
|
|
};
|
|
}
|