Files
bitvid/js/nostr/dmDecryptDiagnostics.js
T

43 lines
1021 B
JavaScript

export function summarizeDmEventForLog(event) {
if (!event || typeof event !== "object") {
return {
kind: null,
createdAt: null,
hasContent: false,
contentLength: 0,
tagCount: 0,
};
}
const createdAt = Number.isFinite(event.created_at)
? Math.floor(event.created_at)
: null;
return {
kind: Number.isFinite(event.kind) ? event.kind : null,
createdAt,
hasContent: typeof event.content === "string" && event.content.length > 0,
contentLength: typeof event.content === "string" ? event.content.length : 0,
tagCount: Array.isArray(event.tags) ? event.tags.length : 0,
};
}
export function sanitizeDecryptError(error) {
if (!error) {
return null;
}
const message =
typeof error.message === "string"
? error.message
: typeof error === "string"
? error
: "";
return {
name: typeof error.name === "string" ? error.name : "",
code: typeof error.code === "string" ? error.code : "",
message,
};
}