Skip to content

Commit

Permalink
Merge branch 'develop' of github.com:AthennaIO/Common into develop
Browse files Browse the repository at this point in the history
  • Loading branch information
jlenon7 committed Sep 22, 2023
2 parents 3a0b2ab + 5745a1c commit a2b48f7
Showing 1 changed file with 45 additions and 1 deletion.
46 changes: 45 additions & 1 deletion src/helpers/Exception.ts
Original file line number Diff line number Diff line change
Expand Up @@ -106,7 +106,51 @@ export class Exception extends Error {
this.message = this.message.concat(`\n\n${separator}`)
}

const pretty = await new Youch(this, {}).toJSON()
const youch = new Youch(this, {})

// eslint-disable-next-line @typescript-eslint/ban-ts-comment
// @ts-ignore
youch._getFrameSource = function (frame) {
let path = frame.file
.replace(/dist\/webpack:\//g, '') // unix
.replace(/dist\\webpack:\\/g, '') // windows

/**
* We ignore the error when "fileURLToPath" is unable to parse
* the path, since returning the frame source is an optional
* thing
*/
try {
path = path.startsWith('file:') ? fileURLToPath(path) : path
} catch {}

return new Promise(resolve => {
if (!path) {
resolve(null)
return
}
readFile(path, 'utf-8', (error, contents) => {
if (error) {
resolve(null)
return
}

const lines = contents.split(/\r?\n/)
const lineNumber = frame.line

resolve({
pre: lines.slice(
Math.max(0, lineNumber - (this.options.preLines + 1)),
lineNumber - 1
),
line: lines[lineNumber - 1],
post: lines.slice(lineNumber, lineNumber + this.options.postLines)
})
})
})
}

const pretty = await youch.toJSON()

pretty.error.frames = pretty.error.frames.map(frame => {
frame.isApp = true
Expand Down

0 comments on commit a2b48f7

Please sign in to comment.