You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

1597 lines
18 KiB

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>JSDoc: Class: Lineup</title>
<script src="scripts/prettify/prettify.js"> </script>
<script src="scripts/prettify/lang-css.js"> </script>
<!--[if lt IE 9]>
<script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
<link type="text/css" rel="stylesheet" href="styles/prettify-tomorrow.css">
<link type="text/css" rel="stylesheet" href="styles/jsdoc-default.css">
</head>
<body>
<div id="main">
<h1 class="page-title">Class: Lineup</h1>
<section>
<header>
<h2><span class="attribs"><span class="type-signature"></span></span>Lineup<span class="signature">()</span><span class="type-signature"></span></h2>
<div class="class-description">Model representing a starting lineup/bench configuration for a
given team. These will have copies frozen for each week that progresses.</div>
</header>
<article>
<div class="container-overview">
<h2>Constructor</h2>
<h4 class="name" id="Lineup"><span class="type-signature"></span>new Lineup<span class="signature">()</span><span class="type-signature"></span></h4>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="app_models_Lineup.model.js.html">app/models/Lineup.model.js</a>, <a href="app_models_Lineup.model.js.html#line8">line 8</a>
</li></ul></dd>
</dl>
</div>
<h3 class="subsection-title">Extends</h3>
<ul>
<li>Model</li>
</ul>
<h3 class="subsection-title">Methods</h3>
<h4 class="name" id=".get_and_update_for_team"><span class="type-signature">(async, static) </span>get_and_update_for_team<span class="signature">(team)</span><span class="type-signature"> &rarr; {Promise.&lt;<a href="Lineup.html">Lineup</a>>}</span></h4>
<div class="description">
Given a team, fetch the latest draft lineup for that team.
This will also update the lineup record so that it includes all players
currently on the team (benching any players not already in the lineup).
If no lineup exists, one will be created.
</div>
<h5>Parameters:</h5>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>team</code></td>
<td class="type">
<span class="param-type"><a href="Team.html">Team</a></span>
</td>
<td class="description last"></td>
</tr>
</tbody>
</table>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="app_models_Lineup.model.js.html">app/models/Lineup.model.js</a>, <a href="app_models_Lineup.model.js.html#line60">line 60</a>
</li></ul></dd>
</dl>
<h5>Returns:</h5>
<dl>
<dt>
Type
</dt>
<dd>
<span class="param-type">Promise.&lt;<a href="Lineup.html">Lineup</a>></span>
</dd>
</dl>
<h4 class="name" id="bench_player"><span class="type-signature"></span>bench_player<span class="signature">(player)</span><span class="type-signature"></span></h4>
<div class="description">
Removes the player from the starting lineup if they are there and
adds them to the bench if they aren't already there.
</div>
<h5>Parameters:</h5>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>player</code></td>
<td class="type">
<span class="param-type"><a href="Player.html">Player</a></span>
</td>
<td class="description last"></td>
</tr>
</tbody>
</table>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="app_models_Lineup.model.js.html">app/models/Lineup.model.js</a>, <a href="app_models_Lineup.model.js.html#line149">line 149</a>
</li></ul></dd>
</dl>
<h4 class="name" id="calculate_fantasy_points"><span class="type-signature">(async) </span>calculate_fantasy_points<span class="signature">()</span><span class="type-signature"> &rarr; {Promise.&lt;number>}</span></h4>
<div class="description">
Calculate the fantasy points scored by the starting players on this lineup.
</div>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="app_models_Lineup.model.js.html">app/models/Lineup.model.js</a>, <a href="app_models_Lineup.model.js.html#line39">line 39</a>
</li></ul></dd>
</dl>
<h5>Returns:</h5>
<dl>
<dt>
Type
</dt>
<dd>
<span class="param-type">Promise.&lt;number></span>
</dd>
</dl>
<h4 class="name" id="clear_lineup"><span class="type-signature"></span>clear_lineup<span class="signature">()</span><span class="type-signature"></span></h4>
<div class="description">
Remove all players from the bench and the starting lineup.
</div>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="app_models_Lineup.model.js.html">app/models/Lineup.model.js</a>, <a href="app_models_Lineup.model.js.html#line169">line 169</a>
</li></ul></dd>
</dl>
<h4 class="name" id="has_bench_player"><span class="type-signature"></span>has_bench_player<span class="signature">(player)</span><span class="type-signature"> &rarr; {boolean}</span></h4>
<div class="description">
Returns true if the given player is on the bench in this lineup.
</div>
<h5>Parameters:</h5>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>player</code></td>
<td class="type">
<span class="param-type"><a href="Player.html">Player</a></span>
</td>
<td class="description last"></td>
</tr>
</tbody>
</table>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="app_models_Lineup.model.js.html">app/models/Lineup.model.js</a>, <a href="app_models_Lineup.model.js.html#line122">line 122</a>
</li></ul></dd>
</dl>
<h5>Returns:</h5>
<dl>
<dt>
Type
</dt>
<dd>
<span class="param-type">boolean</span>
</dd>
</dl>
<h4 class="name" id="has_player"><span class="type-signature"></span>has_player<span class="signature">(player)</span><span class="type-signature"> &rarr; {boolean}</span></h4>
<div class="description">
Returns true if the given player is in this lineup anywhere.
</div>
<h5>Parameters:</h5>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>player</code></td>
<td class="type">
<span class="param-type"><a href="Player.html">Player</a></span>
</td>
<td class="description last"></td>
</tr>
</tbody>
</table>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="app_models_Lineup.model.js.html">app/models/Lineup.model.js</a>, <a href="app_models_Lineup.model.js.html#line140">line 140</a>
</li></ul></dd>
</dl>
<h5>Returns:</h5>
<dl>
<dt>
Type
</dt>
<dd>
<span class="param-type">boolean</span>
</dd>
</dl>
<h4 class="name" id="has_starting_player"><span class="type-signature"></span>has_starting_player<span class="signature">(player)</span><span class="type-signature"> &rarr; {boolean}</span></h4>
<div class="description">
Returns true if the given player is on the starting lineup in this lineup.
</div>
<h5>Parameters:</h5>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>player</code></td>
<td class="type">
<span class="param-type"><a href="Player.html">Player</a></span>
</td>
<td class="description last"></td>
</tr>
</tbody>
</table>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="app_models_Lineup.model.js.html">app/models/Lineup.model.js</a>, <a href="app_models_Lineup.model.js.html#line131">line 131</a>
</li></ul></dd>
</dl>
<h5>Returns:</h5>
<dl>
<dt>
Type
</dt>
<dd>
<span class="param-type">boolean</span>
</dd>
</dl>
<h4 class="name" id="players_in_starting"><span class="type-signature">(async) </span>players_in_starting<span class="signature">()</span><span class="type-signature"> &rarr; {Promise.&lt;Array.&lt;Model>>}</span></h4>
<div class="description">
Returns an array of Players that are on the starting lineup.
</div>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="app_models_Lineup.model.js.html">app/models/Lineup.model.js</a>, <a href="app_models_Lineup.model.js.html#line108">line 108</a>
</li></ul></dd>
</dl>
<h5>Returns:</h5>
<dl>
<dt>
Type
</dt>
<dd>
<span class="param-type">Promise.&lt;Array.&lt;Model>></span>
</dd>
</dl>
<h4 class="name" id="players_on_bench"><span class="type-signature">(async) </span>players_on_bench<span class="signature">()</span><span class="type-signature"> &rarr; {Promise.&lt;Array.&lt;Model>>}</span></h4>
<div class="description">
Returns an array of Players that are on the bench for this lineup.
</div>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="app_models_Lineup.model.js.html">app/models/Lineup.model.js</a>, <a href="app_models_Lineup.model.js.html#line95">line 95</a>
</li></ul></dd>
</dl>
<h5>Returns:</h5>
<dl>
<dt>
Type
</dt>
<dd>
<span class="param-type">Promise.&lt;Array.&lt;Model>></span>
</dd>
</dl>
<h4 class="name" id="start_player"><span class="type-signature"></span>start_player<span class="signature">(player_position_record)</span><span class="type-signature"></span></h4>
<div class="description">
Given the player_id/position record, add it to the starting lineup.
</div>
<h5>Parameters:</h5>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>player_position_record</code></td>
<td class="type">
<span class="param-type">object</span>
</td>
<td class="description last"></td>
</tr>
</tbody>
</table>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="app_models_Lineup.model.js.html">app/models/Lineup.model.js</a>, <a href="app_models_Lineup.model.js.html#line160">line 160</a>
</li></ul></dd>
</dl>
<h4 class="name" id="to_api"><span class="type-signature">(async) </span>to_api<span class="signature">()</span><span class="type-signature"> &rarr; {Promise.&lt;object>}</span></h4>
<div class="description">
Cast the lineup to an object which can be returned via the API.
</div>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="app_models_Lineup.model.js.html">app/models/Lineup.model.js</a>, <a href="app_models_Lineup.model.js.html#line178">line 178</a>
</li></ul></dd>
</dl>
<h5>Returns:</h5>
<dl>
<dt>
Type
</dt>
<dd>
<span class="param-type">Promise.&lt;object></span>
</dd>
</dl>
</article>
</section>
</div>
<nav>
<h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-fake_data.html">fake_data</a></li><li><a href="module-routing.html">routing</a></li><li><a href="module-util.html">util</a></li></ul><h3>Classes</h3><ul><li><a href="ActiveScope.html">ActiveScope</a></li><li><a href="AddPlayersComponent.html">AddPlayersComponent</a></li><li><a href="DraftBoard.html">DraftBoard</a></li><li><a href="DraftBoardComponent.html">DraftBoardComponent</a></li><li><a href="FrontendUnit.html">FrontendUnit</a></li><li><a href="GenerateMatchupsForWeekPatch.html">GenerateMatchupsForWeekPatch</a></li><li><a href="GenerateWeeklyResultsPatch.html">GenerateWeeklyResultsPatch</a></li><li><a href="GridActionButtonComponent.html">GridActionButtonComponent</a></li><li><a href="GridComponent.html">GridComponent</a></li><li><a href="Home.html">Home</a></li><li><a href="InjectUserTeam.html">InjectUserTeam</a></li><li><a href="LeagueComponent.html">LeagueComponent</a></li><li><a href="Lineup.html">Lineup</a></li><li><a href="LinkComponent.html">LinkComponent</a></li><li><a href="Matchup.html">Matchup</a></li><li><a href="module-routing-Router.html">Router</a></li><li><a href="MyTeamComponent.html">MyTeamComponent</a></li><li><a href="Player.html">Player</a></li><li><a href="ScoresComponent.html">ScoresComponent</a></li><li><a href="ScoresController.html">ScoresController</a></li><li><a href="SeedAPIDataPatch.html">SeedAPIDataPatch</a></li><li><a href="SeedWeeklyPlayerDataPatch.html">SeedWeeklyPlayerDataPatch</a></li><li><a href="SportsDataService.html">SportsDataService</a></li><li><a href="Team.html">Team</a></li><li><a href="Teams.html">Teams</a></li><li><a href="TopLevelComponent.html">TopLevelComponent</a></li><li><a href="User.html">User</a></li><li><a href="WeeklyPlayerStat.html">WeeklyPlayerStat</a></li><li><a href="WeeklyTeamStat.html">WeeklyTeamStat</a></li></ul><h3>Global</h3><ul><li><a href="global.html#GridCellRenderType">GridCellRenderType</a></li></ul>
</nav>
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc/jsdoc">JSDoc 3.6.5</a> on Sun Nov 08 2020 14:34:32 GMT-0600 (Central Standard Time)
</footer>
<script> prettyPrint(); </script>
<script src="scripts/linenumber.js"> </script>
</body>
</html>