UNPKG

bugzilla-readable-status

Version:

Given the properties of a bug in bugzilla.mozilla.org, generate an english language readable status message.

103 lines (65 loc) 2.06 kB
# Bugzilla Readable Status Messages Generate readable, english language, status messages from properties of bugs in bugzilla.mozilla.org. The module exposes a single method, `readable,` which can be called in a variety of ways: * an object whos properties correspond to a bugs properties. * the id of a bug (to be implemented) * an array of objects containing bug properties * an array of bug ids (to be implemented) ## Install Clone repo to local. `npm install; npm test; npm run demo` ### For browsers Install browserify `npm install -g browserify` Run the project's bundle script. `npm run bundle` And load the resulting file into your web page. ``` <script src="bugzilla-readable-status.js"></script> ``` To build a minified version of the script, `npm run bundle-min` and then include ``` <script src="bugzilla-readable-status-min.js"></script> ``` in your project. A corresponding source map is generated as well. ## Usage ``` var readable = import('bugzilla-readable-status').readable; var status = readable({ id: NNNNNN, status: 'NEW', … }); // => 'BUG STATUS' var statuses = readable([ { id: NNNNNN, status: 'FIXED' … }. { id: MMMMMM, status: 'NEW' … }, … ]); // => { "statuses": [ { "id": NNNNNN, "status": "BUG STATUS" }, { "id": MMMMMM, "status": "BUG STATUS" }, … ]} var emptyArray = readable([]); // => { "result": [] } ``` ## Errors Errors are returned as objects: ``` { "error": "ERROR STRING" } ``` ### Unable to Parse If there's an unrecoverable error while trying to parse a bug, return `CANNOT_PARSE_BUG`. ### No Data If there are no usable properties or the module can't generate, `NO_STRING_FOR_BUG` ### Errors in Requests for Multiple Bugs If multiple bugs are requested, and errors are found, the errors are included in the reponse object: ``` { "statuses": [ { "id": "BUG ID", "status": "BUG STATUS" }, … { "id": "BUG ID WITH ERROR", "error": "ERROR MESSAGE" } … ]} ```