save
This commit is contained in:
parent
f3fe65a4bb
commit
43c611fcc0
@ -26,7 +26,7 @@
|
||||
<url type="donation">https://github.com/sponsors/martinrotter</url>
|
||||
<content_rating type="oars-1.1" />
|
||||
<releases>
|
||||
<release version="4.1.2" date="2022-02-03"/>
|
||||
<release version="4.1.2" date="2022-02-07"/>
|
||||
</releases>
|
||||
<content_rating type="oars-1.0">
|
||||
<content_attribute id="violence-cartoon">none</content_attribute>
|
||||
|
@ -8,6 +8,9 @@
|
||||
#include "miscellaneous/settings.h"
|
||||
|
||||
#include <QDir>
|
||||
#include <QJsonArray>
|
||||
#include <QJsonDocument>
|
||||
#include <QJsonObject>
|
||||
|
||||
NodeJs::NodeJs(Settings* settings, QObject* parent) : QObject(parent), m_settings(settings) {}
|
||||
|
||||
@ -64,14 +67,38 @@ QString NodeJs::npmVersion(const QString& npm_exe) const {
|
||||
}
|
||||
|
||||
NodeJs::PackageStatus NodeJs::packageStatus(const PackageMetadata& pkg) const {
|
||||
//npm ls --unicode --json --prefix "."
|
||||
|
||||
QString npm_ls = IOFactory::startProcessGetOutput(npmExecutable(),
|
||||
{ QSL("ls"), QSL("--unicode"), QSL("--json"), QSL("--prefix"),
|
||||
processedPackageFolder() });
|
||||
QJsonDocument json = QJsonDocument::fromJson(npm_ls.toUtf8());
|
||||
QJsonObject deps = json.object()["dependencies"].toObject();
|
||||
|
||||
return {};
|
||||
}
|
||||
|
||||
void NodeJs::installPackage(const PackageMetadata& pkg)
|
||||
{}
|
||||
void NodeJs::installUpdatePackage(const PackageMetadata& pkg) {
|
||||
auto pkg_status = packageStatus(pkg);
|
||||
|
||||
switch (pkg_status) {
|
||||
case PackageStatus::NotInstalled:
|
||||
break;
|
||||
|
||||
case PackageStatus::OutOfDate:
|
||||
break;
|
||||
|
||||
case PackageStatus::UpToDate:
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
void NodeJs::installPackage(const PackageMetadata& pkg) {
|
||||
// npm install --prefix "." @cliqz/adblocker@">=1.0.0 <2.0.0" --production --save-exact
|
||||
//https://docs.npmjs.com/cli/v8/commands/npm-install
|
||||
|
||||
}
|
||||
|
||||
void NodeJs::updatePackage(const PackageMetadata& pkg)
|
||||
{
|
||||
// npm update --prefix "." @cliqz/adblocker@">=1.0.0 <2.0.0" --production --save-exact
|
||||
//https://docs.npmjs.com/cli/v8/commands/npm-update
|
||||
}
|
||||
|
@ -55,13 +55,16 @@ class NodeJs : public QObject {
|
||||
|
||||
// Installs package.
|
||||
//
|
||||
// If package is NOT installed, then it is installed.
|
||||
// If package is NOT installed, then it will be installed.
|
||||
// If package IS installed but out-of-date, it is updated to desired versions.
|
||||
//
|
||||
// NOTE: https://docs.npmjs.com/cli/v8/commands/npm-install
|
||||
void installPackage(const PackageMetadata& pkg);
|
||||
void installUpdatePackage(const PackageMetadata& pkg);
|
||||
|
||||
private:
|
||||
void installPackage(const PackageMetadata& pkg);
|
||||
void updatePackage(const PackageMetadata& pkg);
|
||||
|
||||
Settings* m_settings;
|
||||
};
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user