refactor(ci): cleanup GH actions
[poolifier.git] / examples / typescript / http-client-pool / src / worker.ts
index b7c5962914cd0e0e8ab9604182232875c392c771..95917d64207d4d846353be93b6560b9ff6b21e9d 100644 (file)
@@ -1,44 +1,48 @@
-import { ThreadWorker } from 'poolifier'
+import axios from 'axios'
 import nodeFetch, {
   type RequestInfo as NodeFetchRequestInfo,
-  type ResponseInit as NodeFetchRequestInit
+  type ResponseInit as NodeFetchRequestInit,
 } from 'node-fetch'
-import axios from 'axios'
-import { type WorkerData, type WorkerResponse } from './types.js'
+import { ThreadWorker } from 'poolifier'
+
+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,
+          // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
+          workerData!.input as URL | NodeFetchRequestInfo,
           workerData?.init as NodeFetchRequestInit
         )
         // The response is not structured-cloneable, so we return the response text body instead.
         return {
-          text: await response.text()
+          text: await response.text(),
         }
       },
       fetch: async (workerData?: WorkerData) => {
         const response = await fetch(
-          (workerData as WorkerData).input as URL | RequestInfo,
+          // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
+          workerData!.input as URL | RequestInfo,
           workerData?.init as RequestInit
         )
         // The response is not structured-cloneable, so we return the response text body instead.
         return {
-          text: await response.text()
+          text: await response.text(),
         }
       },
       axios: async (workerData?: WorkerData) => {
         const response = await axios({
           method: 'get',
-          url: (workerData as WorkerData).input as string,
-          ...workerData?.axiosRequestConfig
+          // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
+          url: workerData!.input as string,
+          ...workerData?.axiosRequestConfig,
         })
         return {
-          text: response.data
+          text: response.data,
         }
-      }
+      },
     })
   }
 }