pretty-printer.coffee | |
---|---|
color = require('ansi-color').set
wrap = require('wordwrap')(5, 65)
class PrettyPrinter | |
Because I like colors, and I don't want to format them any more than this TODO: Don't hardcode 5 and 6 anymore | prettyPrintIssue: (issue, detail)->
sumColor = "green"
sumColor = "red" if +issue.fields.status.id in [5,6]
process.stdout.write color(issue.key, sumColor + "+bold") |
I don't think this could happen, but maybe.... | issue.fields.summary = "None" unless issue.fields.summary?
process.stdout.write " - "
process.stdout.write issue.fields.summary
process.stdout.write "\n"
if detail and issue.fields.description?
process.stdout.write color("Description:\n", "white+bold")
process.stdout.write wrap(issue.fields.description)
process.stdout.write "\n\n" |
Do some fancy formatting on issue types | prettyPrintIssueTypes: (issueType, index)->
process.stdout.write color(index, "white+bold")
process.stdout.write " - "
process.stdout.write issueType.name
if issueType.description.length > 0
process.stdout.write " - "
process.stdout.write issueType.description
process.stdout.write "\n" |
Pretty Print TransitionShow a transition with the ID in bold followed by the name | prettyPrintTransition: (transition, index) ->
process.stdout.write color(index, "white+bold")
process.stdout.write " - "
process.stdout.write transition.name
process.stdout.write "\n" |
Pretty Print ProjectsPrints the project list in a non-awful format | prettyPrintProject: (project) ->
key = project.key
while key.length < 12
key = ' ' + key
process.stdout.write color(key, "white+bold")
process.stdout.write " - "
process.stdout.write project.id
process.stdout.write " - "
process.stdout.write project.name
process.stdout.write "\n"
module.exports = {
PrettyPrinter
}
|