diff --git a/src/createWorker.js b/src/createWorker.js index 684c8ce..388792b 100644 --- a/src/createWorker.js +++ b/src/createWorker.js @@ -85,6 +85,12 @@ module.exports = (_options = {}) => { })) ); + const remove = (path, jobId) => ( + startJob(createJob({ + id: jobId, action: 'remove', payload: { path }, + })) + ); + const run = (args, jobId) => ( startJob(createJob({ id: jobId, action: 'run', payload: { args }, @@ -132,6 +138,7 @@ module.exports = (_options = {}) => { write, transcode, read, + remove, run, terminate, }; diff --git a/src/worker-script/index.js b/src/worker-script/index.js index 7076868..29caa4b 100644 --- a/src/worker-script/index.js +++ b/src/worker-script/index.js @@ -80,6 +80,15 @@ const read = ({ res.resolve(Module.FS.readFile(path)); }; +const remove = ({ + payload: { + path, + }, +}, res) => { + Module.FS.unlink(path); + res.resolve({ message: `Delete ${path}` }); +}; + const run = ({ payload: { args, @@ -108,6 +117,7 @@ exports.dispatchHandlers = (packet, send) => { write, transcode, read, + remove, run, })[packet.action](packet, res); } catch (err) {