fix: ensure only circular buffer is converted to array
[e-mobility-charging-stations-simulator.git] / src / utils / MessageChannelUtils.ts
index bd7036aca60c851e9a25075f196ff0224bf019cf..f9d1e14980017606a7c1f64ec0135eb47bf8e80b 100644 (file)
@@ -1,4 +1,4 @@
-import type { CircularBuffer } from 'mnemonist'
+import { CircularBuffer } from 'mnemonist'
 
 import type { ChargingStation } from '../charging-station/index.js'
 import {
@@ -64,9 +64,9 @@ export const buildPerformanceStatisticsMessage = (
   statistics: Statistics
 ): ChargingStationWorkerMessage<Statistics> => {
   const statisticsData = [...statistics.statisticsData].map(([key, value]) => {
-    value.measurementTimeSeries = (
-      value.measurementTimeSeries as CircularBuffer<TimestampedData>
-    ).toArray() as TimestampedData[]
+    if (value.measurementTimeSeries instanceof CircularBuffer) {
+      value.measurementTimeSeries = value.measurementTimeSeries.toArray() as TimestampedData[]
+    }
     return [key, value]
   })
   return {