/*jslint vars: true, plusplus: true, devel: true, nomen: true, regexp: true, indent: 4, maxerr: 50 */ /*global define, $, brackets */ /* Result.js */ define(function (require, exports, module) { 'use strict'; /** * Search result * @class Result * @classdesc Represents a resultant package from a search for a manager. * Each data property can have HTML that is rendered. Be kind. * The primary property will always be rendered as a link using the link property. * * @todo Refactor likely into something less hackish. * @param {Stinrg} id Unique package/dependency name * @param {String} manager Manager name as defined in the `Interface/managerModules` array * @param {String} primary Primary text about the result (eg. A friendly name of a package) * @param {String} secondary Secondary text about the result (eg. a description of a package) * @param {String} link Url of a package/dependency * @param {String} data1 Data field (eg. last updated) * @param {String} data2 Data field (eg. version) * @param {String} data3 Data field (eg. downloads) * @param {String} status Status of result; either an empty string, installed, update, or error * @param {String} button Description of buttons; either an empty string or installed */ function Result (id, manager, primary, secondary, link, data1, data2, data3, status, button) { this.id = id; this.manager = manager; this.primary = primary; this.secondary = secondary; this.link = link; this.data1 = data1; this.data2 = data2; this.data3 = data3; this.status = status; this.button = button; } Result.prototype.id = ''; Result.prototype.manager = ''; Result.prototype.primary = ''; Result.prototype.secondary = ''; Result.prototype.link = ''; Result.prototype.data1 = ''; Result.prototype.data2 = ''; Result.prototype.data3 = ''; Result.prototype.status = ''; Result.prototype.button = ''; return Result; });