nefertiti-node
Version:
ES module to work with Nefertiti crypto trade bot.
115 lines (81 loc) • 3.97 kB
HTML
<html lang="en">
<head>
<meta charset="utf-8">
<title>helpers/github-downloader.js - Documentation</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.css">
<link type="text/css" rel="stylesheet" href="styles/jsdoc.css">
<script src="scripts/nav.js" defer></script>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
</head>
<body>
<input type="checkbox" id="nav-trigger" class="nav-trigger" />
<label for="nav-trigger" class="navicon-button x">
<div class="navicon"></div>
</label>
<label for="nav-trigger" class="overlay"></label>
<nav >
<h2><a href="index.html">Home</a></h2><h3>Global</h3><ul><li><a href="global.html#deleteBot">deleteBot</a></li><li><a href="global.html#downloadNefertiti">downloadNefertiti</a></li><li><a href="global.html#filterMarketsByCurrency">filterMarketsByCurrency</a></li><li><a href="global.html#getAvailableMarkets">getAvailableMarkets</a></li><li><a href="global.html#getCurrentNefVersion">getCurrentNefVersion</a></li><li><a href="global.html#getSupportedExchanges">getSupportedExchanges</a></li><li><a href="global.html#pingBot">pingBot</a></li><li><a href="global.html#pingHub">pingHub</a></li><li><a href="global.html#postBot">postBot</a></li><li><a href="global.html#sendNotificationsTest">sendNotificationsTest</a></li><li><a href="global.html#updateBot">updateBot</a></li><li><a href="global.html#updateNef">updateNef</a></li></ul>
</nav>
<div id="main">
<h1 class="page-title">helpers/github-downloader.js</h1>
<section>
<article>
<pre class="prettyprint source linenums"><code>/* eslint-disable no-console */
import downloadRelease from 'download-github-release';
import { getPlatform, getArch } from './get-sysinfo.js';
import { executablePath as outputdir } from '../functions/variables.js';
const user = 'svanas';
const repo = 'nefertiti';
// const outputdir = executablePath;
const leaveZipped = false;
// Define a function to filter releases.
function filterRelease(release) {
// Filter out prereleases.
return release.prerelease === false;
}
// Define a function to filter assets.
function filterAsset(asset) {
// using getPlatform() and getArch() from get-sysinfo.js
const filterStr = `${getPlatform()}_${getArch()}`;
// Select assets that contain the filterStr
return asset.name.indexOf(filterStr) >= 0;
}
// TODO Need to setup notifications for this instead of using console.log
/**
* @function downloadNefertiti
* @description Downloads the latest release from GitHub for the client platform and architecture.
*/
export default function downloadNefertitiFromGithub() {
console.log(
`This module requires Nefertiti. Downloading nefertiti_${getPlatform()}_${getArch()} from GitHub...`,
);
// eslint-disable-next-line max-len
downloadRelease(user, repo, outputdir, filterRelease, filterAsset, leaveZipped)
.then(() => {
console.log(
`All done! nefertiti_${getPlatform()}_${getArch()} is available in ./${outputdir}`,
);
})
.catch((err) => {
throw new Error(err);
});
}
</code></pre>
</article>
</section>
</div>
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.7</a> on Sat Dec 18 2021 15:50:34 GMT-0600 (Central Standard Time) using the <a href="https://github.com/clenemt/docdash">docdash</a> theme.
</footer>
<script>prettyPrint();</script>
<script src="scripts/polyfill.js"></script>
<script src="scripts/linenumber.js"></script>
</body>
</html>