Comparison of all the stuff I did. #6

Merged
Guzio merged 48 commits from fuckery into main 2026-03-02 15:17:09 +00:00
2 changed files with 20 additions and 2 deletions
Showing only changes of commit 06962c217e - Show all commits

View file

@ -158,11 +158,12 @@ async function sendError(roomID, source, type, e, payload) {
/**
* @param {string} type
* @param {(event: any, ...args: any)=>any} fn
* @param {(event: Ty.Event.Outer<any> & {type: any, redacts:any, state_key:any}, ...args: any)=>any} fn
*/
function guard(type, fn) {
return async function(/** @type {Ty.Event.Outer<any>} */ event, /** @type {any} */ ...args) {
try {
// @ts-ignore
return await fn(event, ...args)
} catch (e) {
await sendError(event.room_id, "Matrix", type, e, event)
@ -216,7 +217,7 @@ async event => {
let executedCommand
if (event.type === "m.room.message" && event.content.msgtype === "m.text") {
executedCommand = await matrixCommandHandler.parseAndExecute(
// @ts-ignore - TypeScript doesn't know that the event.content.msgtype === "m.text" ensures that event isn't of type Ty.Event.Outer_M_Room_Message_File (which, indeed, wouldn't fit here)
// @ts-ignore - TypeScript doesn't know that the event.content.msgtype === "m.text" check ensures that event isn't of type Ty.Event.Outer_M_Room_Message_File (which, indeed, wouldn't fit here)
event
)
}

View file

@ -96,6 +96,22 @@ function replyctx(execute) {
}
}
/**
* @param {Error & {code: string|number}} e
* @returns {e}
*/
function unmarshallDiscordError(e) {
if (e.name === "DiscordAPIError"){
try{
JSON.parse(e.message)
} catch{
}
}
return e;
}
/** @type {Command[]} */
const commands = [{
aliases: ["emoji"],
@ -289,6 +305,7 @@ const commands = [{
const but_im_done_with_you = typeof e.code
console.log("Type of "+e+" is "+what_how+" with keys "+Object.keys(e) + " and the value of that „code” key is "+e.code+" of type "+but_im_done_with_you)
console.log("MSG: "+e.message)
console.log("MST: "+typeof e.message)
console.log("NAM: "+e.name)
if (e.code === "NO_ATTACH_TARGET") {
return api.sendEvent(event.room_id, "m.room.message", {