- workerOptions = workerOptions ?? ({} as WorkerOptions); // why not default parameter ?
- workerOptions.workerStartDelay =
- workerOptions?.workerStartDelay ?? WorkerConstants.DEFAULT_WORKER_START_DELAY; // why null safety ?
- workerOptions.elementStartDelay =
- workerOptions?.elementStartDelay ?? WorkerConstants.DEFAULT_ELEMENT_START_DELAY;
- workerOptions.poolOptions = workerOptions?.poolOptions ?? ({} as PoolOptions<Worker>);
- workerOptions?.messageHandler &&
- // eslint-disable-next-line @typescript-eslint/no-misused-promises
- (workerOptions.poolOptions.messageHandler = workerOptions.messageHandler);
- console.log('before');
- let workerImplementation: WorkerAbstract<T> = null; // enabling strictNullChecks would be safer ?
- console.log(workerImplementation);
+ workerOptions = { ...DEFAULT_WORKER_OPTIONS, ...workerOptions };
+ let workerImplementation: WorkerAbstract<T> | null = null;