Skip to content

Commit

Permalink
Add retro project info task
Browse files Browse the repository at this point in the history
  • Loading branch information
eternauta1337 committed May 3, 2024
1 parent d7fbebe commit 2b8610b
Showing 1 changed file with 33 additions and 0 deletions.
33 changes: 33 additions & 0 deletions packages/ethernaut-retropgf/src/tasks/project.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
const Agora = require('../internal/agora/Agora')
const output = require('ethernaut-common/src/ui/output')
const similarity = require('string-similarity')

require('../scopes/retro')
.task('project', 'Information about a particular RetroPGF project')
.addPositionalParam('name', 'The project name to query')
.setAction(async ({ name }) => {
try {
let projects = await getProjects()

const matches = similarity.findBestMatch(
name,
projects.map((p) => p.name),
)

if (!matches) {
return output.resultBox('No project found')
}

const match = projects.find((p) => p.name === matches.bestMatch.target)

return output.resultBox(JSON.stringify(match, null, 2))
} catch (err) {
return output.errorBox(err)
}
})

async function getProjects() {
const agora = new Agora()

return agora.retro.projects()
}

0 comments on commit 2b8610b

Please sign in to comment.