Strict boolean check in src/charging-station/UIServiceWorkerBroadcastChannel.ts
[e-mobility-charging-stations-simulator.git] / src / charging-station / MessageChannelUtils.ts
index 2371dd3df8a1146f6d0961ca26629dcba35aade8..9bf283d5e9e7330c98fac544e16da12eebfb93f8 100644 (file)
@@ -3,7 +3,7 @@ import {
   ChargingStationWorkerMessage,
   ChargingStationWorkerMessageEvents,
 } from '../types/ChargingStationWorker';
-import type Statistics from '../types/Statistics';
+import type { Statistics } from '../types/Statistics';
 import type ChargingStation from './ChargingStation';
 
 export class MessageChannelUtils {
@@ -51,14 +51,23 @@ export class MessageChannelUtils {
     chargingStation: ChargingStation
   ): ChargingStationData {
     return {
-      hashId: chargingStation.hashId,
       stationInfo: chargingStation.stationInfo,
-      stopped: chargingStation.stopped,
+      started: chargingStation.started,
+      wsState: chargingStation?.wsConnection?.readyState,
       bootNotificationResponse: chargingStation.bootNotificationResponse,
-      connectors: Array.from(chargingStation.connectors.values()).map(
+      connectors: [...chargingStation.connectors.values()].map(
         // eslint-disable-next-line @typescript-eslint/no-unused-vars
         ({ transactionSetInterval, ...connectorStatusRest }) => connectorStatusRest
       ),
+      ...(chargingStation.automaticTransactionGenerator && {
+        automaticTransactionGenerator: {
+          automaticTransactionGenerator:
+            chargingStation.automaticTransactionGenerator.configuration,
+          automaticTransactionGeneratorStatuses: [
+            ...chargingStation.automaticTransactionGenerator.connectorsStatus.values(),
+          ],
+        },
+      }),
     };
   }
 }