refactor: use zero sized dynamic pool in examples
[poolifier.git] / examples / typescript / http-client-pool / src / worker.ts
index 4dc3a6a9d52cca84a196cdbef6df96704dbdd296..1e89761f9439cb019e271de8620f1d52b0f1e67d 100644 (file)
@@ -1,18 +1,17 @@
 import { ThreadWorker } from 'poolifier'
-import nodeFetch from 'node-fetch'
-import {
+import nodeFetch, {
   type RequestInfo as NodeFetchRequestInfo,
   type ResponseInit as NodeFetchRequestInit
 } from 'node-fetch'
 import axios from 'axios'
-import { type WorkerData, type WorkerResponse } from './types.js'
+import type { WorkerData, WorkerResponse } from './types.js'
 
 class HttpClientWorker extends ThreadWorker<WorkerData, WorkerResponse> {
   public constructor () {
     super({
       node_fetch: async (workerData?: WorkerData) => {
         const response = await nodeFetch(
-          (workerData as WorkerData).input as URL | NodeFetchRequestInfo,
+          workerData!.input as URL | NodeFetchRequestInfo,
           workerData?.init as NodeFetchRequestInit
         )
         // The response is not structured-cloneable, so we return the response text body instead.
@@ -22,7 +21,7 @@ class HttpClientWorker extends ThreadWorker<WorkerData, WorkerResponse> {
       },
       fetch: async (workerData?: WorkerData) => {
         const response = await fetch(
-          (workerData as WorkerData).input as URL | RequestInfo,
+          workerData!.input as URL | RequestInfo,
           workerData?.init as RequestInit
         )
         // The response is not structured-cloneable, so we return the response text body instead.
@@ -33,7 +32,7 @@ class HttpClientWorker extends ThreadWorker<WorkerData, WorkerResponse> {
       axios: async (workerData?: WorkerData) => {
         const response = await axios({
           method: 'get',
-          url: (workerData as WorkerData).input as string,
+          url: workerData!.input as string,
           ...workerData?.axiosRequestConfig
         })
         return {