mirror of
https://github.com/DeNNiiInc/dbgate.git
synced 2026-05-01 07:23:58 +00:00
fixed plugin probleM (fs-extra.pathExists doesn't work correctly with paths in ASAR used in electron)
This commit is contained in:
@@ -67,7 +67,8 @@ module.exports = {
|
|||||||
const { latest } = infoResp.data['dist-tags'];
|
const { latest } = infoResp.data['dist-tags'];
|
||||||
const manifest = infoResp.data.versions[latest];
|
const manifest = infoResp.data.versions[latest];
|
||||||
const { readme } = infoResp.data;
|
const { readme } = infoResp.data;
|
||||||
const isPackaged = await fs.pathExists(path.join(packagedPluginsDir(), packageName));
|
// @ts-ignore
|
||||||
|
const isPackaged = await fs.exists(path.join(packagedPluginsDir(), packageName));
|
||||||
|
|
||||||
return {
|
return {
|
||||||
readme,
|
readme,
|
||||||
@@ -107,7 +108,8 @@ module.exports = {
|
|||||||
})
|
})
|
||||||
.then(x => JSON.parse(x));
|
.then(x => JSON.parse(x));
|
||||||
const readmeFile = path.join(pluginsdir(), packageName, 'README.md');
|
const readmeFile = path.join(pluginsdir(), packageName, 'README.md');
|
||||||
if (await fs.pathExists(readmeFile)) {
|
// @ts-ignore
|
||||||
|
if (await fs.exists(readmeFile)) {
|
||||||
manifest.readme = await fs.readFile(readmeFile, { encoding: 'utf-8' });
|
manifest.readme = await fs.readFile(readmeFile, { encoding: 'utf-8' });
|
||||||
}
|
}
|
||||||
manifest.isPackaged = isPackaged;
|
manifest.isPackaged = isPackaged;
|
||||||
@@ -129,7 +131,8 @@ module.exports = {
|
|||||||
async install({ packageName }) {
|
async install({ packageName }) {
|
||||||
if (!hasPermission(`plugins/install`)) return;
|
if (!hasPermission(`plugins/install`)) return;
|
||||||
const dir = path.join(pluginsdir(), packageName);
|
const dir = path.join(pluginsdir(), packageName);
|
||||||
if (!(await fs.pathExists(dir))) {
|
// @ts-ignore
|
||||||
|
if (!(await fs.exists(dir))) {
|
||||||
await downloadPackage(packageName, dir);
|
await downloadPackage(packageName, dir);
|
||||||
}
|
}
|
||||||
socket.emitChanged(`installed-plugins-changed`);
|
socket.emitChanged(`installed-plugins-changed`);
|
||||||
@@ -151,7 +154,8 @@ module.exports = {
|
|||||||
async upgrade({ packageName }) {
|
async upgrade({ packageName }) {
|
||||||
if (!hasPermission(`plugins/install`)) return;
|
if (!hasPermission(`plugins/install`)) return;
|
||||||
const dir = path.join(pluginsdir(), packageName);
|
const dir = path.join(pluginsdir(), packageName);
|
||||||
if (await fs.pathExists(dir)) {
|
// @ts-ignore
|
||||||
|
if (await fs.exists(dir)) {
|
||||||
await fs.rmdir(dir, { recursive: true });
|
await fs.rmdir(dir, { recursive: true });
|
||||||
await downloadPackage(packageName, dir);
|
await downloadPackage(packageName, dir);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user