diff --git a/src/services/SearchStore.ts b/src/services/SearchStore.ts index ab80b71c8a..d096debe3f 100644 --- a/src/services/SearchStore.ts +++ b/src/services/SearchStore.ts @@ -4,21 +4,23 @@ import { OperationModel } from './models'; import Worker from './SearchWorker.worker'; -let worker: new () => Worker; - -if (IS_BROWSER) { - try { - // tslint:disable-next-line - worker = require('workerize-loader?inline&fallback=false!./SearchWorker.worker'); - } catch (e) { +function getWorker() { + let worker: new () => Worker; + if (IS_BROWSER) { + try { + // tslint:disable-next-line + worker = require('workerize-loader?inline&fallback=false!./SearchWorker.worker'); + } catch (e) { + worker = require('./SearchWorker.worker').default; + } + } else { worker = require('./SearchWorker.worker').default; } -} else { - worker = require('./SearchWorker.worker').default; + return new worker(); } export class SearchStore { - searchWorker = new worker(); + searchWorker = getWorker(); indexItems(groups: Array) { const recurse = items => {