diff --git a/client/src/templates/Challenges/rechallenge/transformers.js b/client/src/templates/Challenges/rechallenge/transformers.js index 2a97e46cf2..124bc6845d 100644 --- a/client/src/templates/Challenges/rechallenge/transformers.js +++ b/client/src/templates/Challenges/rechallenge/transformers.js @@ -16,7 +16,7 @@ import presetReact from '@babel/preset-react'; import protect from 'loop-protect'; import * as vinyl from '../utils/polyvinyl.js'; -import WorkerExecutor from '../utils/worker-executor'; +import createWorker from '../utils/worker-executor'; const protectTimeout = 100; Babel.registerPlugin('loopProtection', protect(protectTimeout)); @@ -91,7 +91,7 @@ export const babelTransformer = cond([ [stubTrue, identity] ]); -const sassWorker = new WorkerExecutor('sass-compile'); +const sassWorker = createWorker('sass-compile'); async function transformSASS(element) { const styleTags = element.querySelectorAll('style[type="text/sass"]'); await Promise.all( diff --git a/client/src/templates/Challenges/redux/execute-challenge-saga.js b/client/src/templates/Challenges/redux/execute-challenge-saga.js index 0c66a7503d..8868e48420 100644 --- a/client/src/templates/Challenges/redux/execute-challenge-saga.js +++ b/client/src/templates/Challenges/redux/execute-challenge-saga.js @@ -27,14 +27,14 @@ import { import { challengeTypes } from '../../../../utils/challengeTypes'; -import WorkerExecutor from '../utils/worker-executor'; +import createWorker from '../utils/worker-executor'; import { createMainFramer, createTestFramer, runTestInTestFrame } from '../utils/frame.js'; -const testWorker = new WorkerExecutor('test-evaluator'); +const testWorker = createWorker('test-evaluator'); const testTimeout = 5000; function* ExecuteChallengeSaga() { diff --git a/client/src/templates/Challenges/utils/worker-executor.js b/client/src/templates/Challenges/utils/worker-executor.js index 29b5ab676c..99ebbe31b8 100644 --- a/client/src/templates/Challenges/utils/worker-executor.js +++ b/client/src/templates/Challenges/utils/worker-executor.js @@ -1,6 +1,6 @@ import { homeLocation } from '../../../../config/env.json'; -export default class WorkerExecutor { +class WorkerExecutor { constructor(workerName) { this.workerName = workerName; this.worker = null; @@ -71,3 +71,7 @@ export default class WorkerExecutor { } } } + +export default function createWorkerExecutor(workerName) { + return new WorkerExecutor(workerName); +}