build(deps-dev): apply updates
[poolifier.git] / examples / typescript / websocket-server-pool / ws-hybrid / src / websocket-server-worker.ts
index ec6a3d18736f119cb27f5e32988fe464f5d2d3d4..e52f0c06c9331ee011b17b75c8724974c8329a3b 100644 (file)
@@ -1,9 +1,10 @@
 import {
+  availableParallelism,
   ClusterWorker,
-  DynamicThreadPool,
-  availableParallelism
+  DynamicThreadPool
 } from 'poolifier'
 import { type RawData, WebSocketServer } from 'ws'
+
 import {
   type ClusterWorkerData,
   type ClusterWorkerResponse,
@@ -32,7 +33,7 @@ ClusterWorkerResponse
     workerData?: ClusterWorkerData
   ): ClusterWorkerResponse => {
     const { port, workerFile, minWorkers, maxWorkers, ...poolOptions } =
-      workerData as ClusterWorkerData
+      workerData!
 
     WebSocketServerWorker.requestHandlerPool = new DynamicThreadPool<
     ThreadWorkerData<DataPayload>,
@@ -68,7 +69,7 @@ ClusterWorkerResponse
                     data: response.data
                   })
                 )
-                return null
+                return undefined
               })
               .catch(emptyFunction)
             break
@@ -77,12 +78,15 @@ ClusterWorkerResponse
               .execute({ data }, 'factorial')
               .then(response => {
                 ws.send(
-                  JSON.stringify({
-                    type: MessageType.factorial,
-                    data: response.data
-                  })
+                  JSON.stringify(
+                    {
+                      type: MessageType.factorial,
+                      data: response.data
+                    },
+                    (_, v) => (typeof v === 'bigint' ? v.toString() : v)
+                  )
                 )
-                return null
+                return undefined
               })
               .catch(emptyFunction)
             break