diff --git a/packages/api/src/controllers/runners.js b/packages/api/src/controllers/runners.js
index 9daa640e9..627981d82 100644
--- a/packages/api/src/controllers/runners.js
+++ b/packages/api/src/controllers/runners.js
@@ -15,17 +15,20 @@ function extractPlugins(script) {
return matches.map(x => x[1]);
}
-const requirePluginsTemplate = plugins =>
+const requirePluginsTemplate = (plugins, isExport) =>
plugins
.map(
- packageName => `const ${_.camelCase(packageName)} = require(process.env.PLUGIN_${_.camelCase(packageName)});\n`
+ packageName =>
+ `const ${_.camelCase(packageName)} = require(${
+ isExport ? `'${packageName}'` : `process.env.PLUGIN_${_.camelCase(packageName)}`
+ });\n`
)
.join('') + `dbgateApi.registerPlugins(${plugins.map(x => _.camelCase(x)).join(',')});\n`;
-const scriptTemplate = script => `
-const dbgateApi = require(process.env.DBGATE_API);
+const scriptTemplate = (script, isExport) => `
+const dbgateApi = require(${isExport ? `'dbgate-api'` : 'process.env.DBGATE_API'});
dbgateApi.initializeApiEnvironment();
-${requirePluginsTemplate(extractPlugins(script))}
+${requirePluginsTemplate(extractPlugins(script), isExport)}
require=null;
async function run() {
${script}
@@ -139,7 +142,12 @@ module.exports = {
start_meta: 'post',
async start({ script }) {
const runid = uuidv1();
- return this.startCore(runid, scriptTemplate(script));
+ return this.startCore(runid, scriptTemplate(script, false));
+ },
+
+ getNodeScript_meta: 'post',
+ async getNodeScript({ script }) {
+ return scriptTemplate(script, true);
},
cancel_meta: 'post',
diff --git a/packages/web/src/appobj/ArchiveFolderAppObject.svelte b/packages/web/src/appobj/ArchiveFolderAppObject.svelte
index 3f07d8cc2..48675165e 100644
--- a/packages/web/src/appobj/ArchiveFolderAppObject.svelte
+++ b/packages/web/src/appobj/ArchiveFolderAppObject.svelte
@@ -5,7 +5,7 @@