ocpp-messages 0.2.1 → 0.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/compile.js CHANGED
@@ -11,73 +11,74 @@ const fs = require("fs");
11
11
  function extractLargeEnums(ts, propertyName) {
12
12
  const extractedTypes = [];
13
13
  const typeMap = new Map();
14
-
14
+
15
15
  // Match inline union types - handles both single-line and multi-line formats
16
- // Pattern matches:
16
+ // Pattern matches:
17
17
  // propertyName?: "value1" | "value2" ...;
18
18
  // OR
19
19
  // propertyName?:
20
20
  // | "value1"
21
21
  // | "value2" ...;
22
- const enumPattern = /(\w+)\?:\s*\n?\s*((?:\|\s*)?(?:"[^"]+"\s*(?:\||;)\s*\n?\s*)*(?:"[^"]+"))\s*;/gs;
23
-
22
+ const enumPattern =
23
+ /(\w+)\?:\s*\n?\s*((?:\|\s*)?(?:"[^"]+"\s*(?:\||;)\s*\n?\s*)*(?:"[^"]+"))\s*;/gs;
24
+
24
25
  let transformed = ts;
25
26
  let match;
26
27
  const matches = [];
27
-
28
+
28
29
  // Collect all matches first (to avoid issues with string replacement during iteration)
29
30
  while ((match = enumPattern.exec(ts)) !== null) {
30
31
  matches.push({
31
32
  fullMatch: match[0],
32
33
  propName: match[1],
33
- enumValues: match[2]
34
+ enumValues: match[2],
34
35
  });
35
36
  }
36
-
37
+
37
38
  // Process each match
38
39
  for (const matchData of matches) {
39
40
  const { fullMatch, propName, enumValues } = matchData;
40
-
41
+
41
42
  // Extract all quoted values
42
43
  const values = enumValues.match(/"[^"]+"/g);
43
44
  if (values && values.length > 3) {
44
45
  // Generate type name: capitalize first letter and add "EnumType" suffix
45
46
  const typeName = propName.charAt(0).toUpperCase() + propName.slice(1) + "EnumType";
46
-
47
+
47
48
  // Format the enum type nicely
48
- const formattedEnum = values.map((v, i) =>
49
- i === 0 ? `\n | ${v}` : ` | ${v}`
50
- ).join('\n');
51
-
49
+ const formattedEnum = values.map((v, i) => (i === 0 ? `\n | ${v}` : ` | ${v}`)).join("\n");
50
+
52
51
  // Store extracted type if not already added
53
52
  if (!typeMap.has(typeName)) {
54
53
  extractedTypes.push(`export type ${typeName} =${formattedEnum};`);
55
54
  typeMap.set(typeName, true);
56
55
  }
57
-
56
+
58
57
  // Replace inline enum with type reference
59
58
  const replacement = `${propName}?: ${typeName};`;
60
59
  transformed = transformed.replace(fullMatch, replacement);
61
60
  }
62
61
  }
63
-
62
+
64
63
  // If we extracted any types, prepend them to the output
65
64
  if (extractedTypes.length > 0) {
66
- const lines = transformed.split('\n');
67
- const headerEndIndex = lines.findIndex((line, i) => i > 0 && line.trim() === '' && lines[i-1].includes('*/'));
68
-
65
+ const lines = transformed.split("\n");
66
+ const headerEndIndex = lines.findIndex(
67
+ (line, i) => i > 0 && line.trim() === "" && lines[i - 1].includes("*/"),
68
+ );
69
+
69
70
  if (headerEndIndex !== -1) {
70
- const header = lines.slice(0, headerEndIndex + 1).join('\n');
71
- const rest = lines.slice(headerEndIndex + 1).join('\n');
72
- transformed = header + '\n' + extractedTypes.join('\n\n') + '\n\n' + rest;
71
+ const header = lines.slice(0, headerEndIndex + 1).join("\n");
72
+ const rest = lines.slice(headerEndIndex + 1).join("\n");
73
+ transformed = header + "\n" + extractedTypes.join("\n\n") + "\n\n" + rest;
73
74
  } else {
74
75
  // Fallback: just prepend after first 6 lines
75
- const header = lines.slice(0, 6).join('\n');
76
- const rest = lines.slice(6).join('\n');
77
- transformed = header + '\n\n' + extractedTypes.join('\n\n') + '\n\n' + rest;
76
+ const header = lines.slice(0, 6).join("\n");
77
+ const rest = lines.slice(6).join("\n");
78
+ transformed = header + "\n\n" + extractedTypes.join("\n\n") + "\n\n" + rest;
78
79
  }
79
80
  }
80
-
81
+
81
82
  return transformed;
82
83
  }
83
84
 
@@ -110,8 +111,8 @@ fs.readdir(__dirname + "/schema/v2.0", function (err, files) {
110
111
  //listing all files using forEach
111
112
  files.forEach(function (file) {
112
113
  // Skip if not a JSON file
113
- if (!file.endsWith('.json')) return;
114
-
114
+ if (!file.endsWith(".json")) return;
115
+
115
116
  // Extract base name (e.g., "AuthorizeRequest" from "AuthorizeRequest.json" or "AuthorizeRequest_v1p0.json")
116
117
  const baseName = file.replace(/(_v1p0)?\.json$/, "");
117
118
  const filePath = `${__dirname}/schema/v2.0/${file}`;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ocpp-messages",
3
- "version": "0.2.1",
3
+ "version": "0.2.2",
4
4
  "description": "TypeScript definitions for Open Charge Point Protocol (OCPP)",
5
5
  "main": "",
6
6
  "author": "Roman Morawek, embyt GmbH",
package/v1.6/index.d.ts CHANGED
@@ -56,63 +56,63 @@ import { UnlockConnectorResponse } from "./UnlockConnectorResponse";
56
56
  import { UpdateFirmwareRequest } from "./UpdateFirmware";
57
57
  import { UpdateFirmwareResponse } from "./UpdateFirmwareResponse";
58
58
 
59
- // this should also work| but does not: export * from '.';
60
- export * from "./Authorize";
61
- export * from "./AuthorizeResponse";
62
- export * from "./BootNotification";
63
- export * from "./BootNotificationResponse";
64
- export * from "./CancelReservation";
65
- export * from "./CancelReservationResponse";
66
- export * from "./ChangeAvailability";
67
- export * from "./ChangeAvailabilityResponse";
68
- export * from "./ChangeConfiguration";
69
- export * from "./ChangeConfigurationResponse";
70
- export * from "./ClearCache";
71
- export * from "./ClearCacheResponse";
72
- export * from "./ClearChargingProfile";
73
- export * from "./ClearChargingProfileResponse";
74
- export * from "./DataTransfer";
75
- export * from "./DataTransferResponse";
76
- export * from "./DiagnosticsStatusNotification";
77
- export * from "./DiagnosticsStatusNotificationResponse";
78
- export * from "./FirmwareStatusNotification";
79
- export * from "./FirmwareStatusNotificationResponse";
80
- export * from "./GetCompositeSchedule";
81
- export * from "./GetCompositeScheduleResponse";
82
- export * from "./GetConfiguration";
83
- export * from "./GetConfigurationResponse";
84
- export * from "./GetDiagnostics";
85
- export * from "./GetDiagnosticsResponse";
86
- export * from "./GetLocalListVersion";
87
- export * from "./GetLocalListVersionResponse";
88
- export * from "./Heartbeat";
89
- export * from "./HeartbeatResponse";
90
- export * from "./MeterValues";
91
- export * from "./MeterValuesResponse";
92
- export * from "./RemoteStartTransaction";
93
- export * from "./RemoteStartTransactionResponse";
94
- export * from "./RemoteStopTransaction";
95
- export * from "./RemoteStopTransactionResponse";
96
- export * from "./ReserveNow";
97
- export * from "./ReserveNowResponse";
98
- export * from "./Reset";
99
- export * from "./ResetResponse";
100
- export * from "./SendLocalList";
101
- export * from "./SendLocalListResponse";
102
- export * from "./SetChargingProfile";
103
- export * from "./SetChargingProfileResponse";
104
- export * from "./StartTransaction";
105
- export * from "./StartTransactionResponse";
106
- export * from "./StatusNotification";
107
- export * from "./StatusNotificationResponse";
108
- export * from "./StopTransaction";
109
- export * from "./StopTransactionResponse";
110
- export * from "./TriggerMessage";
111
- export * from "./TriggerMessageResponse";
112
- export * from "./UnlockConnector";
113
- export * from "./UnlockConnectorResponse";
114
- export * from "./UpdateFirmware";
115
- export * from "./UpdateFirmwareResponse";
59
+ // Export only the Request and Response types to avoid duplicate enum exports
60
+ export { AuthorizeRequest } from "./Authorize";
61
+ export { AuthorizeResponse } from "./AuthorizeResponse";
62
+ export { BootNotificationRequest } from "./BootNotification";
63
+ export { BootNotificationResponse } from "./BootNotificationResponse";
64
+ export { CancelReservationRequest } from "./CancelReservation";
65
+ export { CancelReservationResponse } from "./CancelReservationResponse";
66
+ export { ChangeAvailabilityRequest } from "./ChangeAvailability";
67
+ export { ChangeAvailabilityResponse } from "./ChangeAvailabilityResponse";
68
+ export { ChangeConfigurationRequest } from "./ChangeConfiguration";
69
+ export { ChangeConfigurationResponse } from "./ChangeConfigurationResponse";
70
+ export { ClearCacheRequest } from "./ClearCache";
71
+ export { ClearCacheResponse } from "./ClearCacheResponse";
72
+ export { ClearChargingProfileRequest } from "./ClearChargingProfile";
73
+ export { ClearChargingProfileResponse } from "./ClearChargingProfileResponse";
74
+ export { DataTransferRequest } from "./DataTransfer";
75
+ export { DataTransferResponse } from "./DataTransferResponse";
76
+ export { DiagnosticsStatusNotificationRequest } from "./DiagnosticsStatusNotification";
77
+ export { DiagnosticsStatusNotificationResponse } from "./DiagnosticsStatusNotificationResponse";
78
+ export { FirmwareStatusNotificationRequest } from "./FirmwareStatusNotification";
79
+ export { FirmwareStatusNotificationResponse } from "./FirmwareStatusNotificationResponse";
80
+ export { GetCompositeScheduleRequest } from "./GetCompositeSchedule";
81
+ export { GetCompositeScheduleResponse } from "./GetCompositeScheduleResponse";
82
+ export { GetConfigurationRequest } from "./GetConfiguration";
83
+ export { GetConfigurationResponse } from "./GetConfigurationResponse";
84
+ export { GetDiagnosticsRequest } from "./GetDiagnostics";
85
+ export { GetDiagnosticsResponse } from "./GetDiagnosticsResponse";
86
+ export { GetLocalListVersionRequest } from "./GetLocalListVersion";
87
+ export { GetLocalListVersionResponse } from "./GetLocalListVersionResponse";
88
+ export { HeartbeatRequest } from "./Heartbeat";
89
+ export { HeartbeatResponse } from "./HeartbeatResponse";
90
+ export { MeterValuesRequest } from "./MeterValues";
91
+ export { MeterValuesResponse } from "./MeterValuesResponse";
92
+ export { RemoteStartTransactionRequest } from "./RemoteStartTransaction";
93
+ export { RemoteStartTransactionResponse } from "./RemoteStartTransactionResponse";
94
+ export { RemoteStopTransactionRequest } from "./RemoteStopTransaction";
95
+ export { RemoteStopTransactionResponse } from "./RemoteStopTransactionResponse";
96
+ export { ReserveNowRequest } from "./ReserveNow";
97
+ export { ReserveNowResponse } from "./ReserveNowResponse";
98
+ export { ResetRequest } from "./Reset";
99
+ export { ResetResponse } from "./ResetResponse";
100
+ export { SendLocalListRequest } from "./SendLocalList";
101
+ export { SendLocalListResponse } from "./SendLocalListResponse";
102
+ export { SetChargingProfileRequest } from "./SetChargingProfile";
103
+ export { SetChargingProfileResponse } from "./SetChargingProfileResponse";
104
+ export { StartTransactionRequest } from "./StartTransaction";
105
+ export { StartTransactionResponse } from "./StartTransactionResponse";
106
+ export { StatusNotificationRequest } from "./StatusNotification";
107
+ export { StatusNotificationResponse } from "./StatusNotificationResponse";
108
+ export { StopTransactionRequest } from "./StopTransaction";
109
+ export { StopTransactionResponse } from "./StopTransactionResponse";
110
+ export { TriggerMessageRequest } from "./TriggerMessage";
111
+ export { TriggerMessageResponse } from "./TriggerMessageResponse";
112
+ export { UnlockConnectorRequest } from "./UnlockConnector";
113
+ export { UnlockConnectorResponse } from "./UnlockConnectorResponse";
114
+ export { UpdateFirmwareRequest } from "./UpdateFirmware";
115
+ export { UpdateFirmwareResponse } from "./UpdateFirmwareResponse";
116
116
 
117
117
  export type ChargePointAction =
118
118
  | "Authorize"
package/v2.0/index.d.ts CHANGED
@@ -128,6 +128,136 @@ import { UnpublishFirmwareResponse } from "./UnpublishFirmwareResponse";
128
128
  import { UpdateFirmwareRequest } from "./UpdateFirmwareRequest";
129
129
  import { UpdateFirmwareResponse } from "./UpdateFirmwareResponse";
130
130
 
131
+ // Export only the Request and Response types to avoid duplicate enum exports
132
+ export { AuthorizeRequest } from "./AuthorizeRequest";
133
+ export { AuthorizeResponse } from "./AuthorizeResponse";
134
+ export { BootNotificationRequest } from "./BootNotificationRequest";
135
+ export { BootNotificationResponse } from "./BootNotificationResponse";
136
+ export { CancelReservationRequest } from "./CancelReservationRequest";
137
+ export { CancelReservationResponse } from "./CancelReservationResponse";
138
+ export { CertificateSignedRequest } from "./CertificateSignedRequest";
139
+ export { CertificateSignedResponse } from "./CertificateSignedResponse";
140
+ export { ChangeAvailabilityRequest } from "./ChangeAvailabilityRequest";
141
+ export { ChangeAvailabilityResponse } from "./ChangeAvailabilityResponse";
142
+ export { ClearCacheRequest } from "./ClearCacheRequest";
143
+ export { ClearCacheResponse } from "./ClearCacheResponse";
144
+ export { ClearChargingProfileRequest } from "./ClearChargingProfileRequest";
145
+ export { ClearChargingProfileResponse } from "./ClearChargingProfileResponse";
146
+ export { ClearDisplayMessageRequest } from "./ClearDisplayMessageRequest";
147
+ export { ClearDisplayMessageResponse } from "./ClearDisplayMessageResponse";
148
+ export { ClearedChargingLimitRequest } from "./ClearedChargingLimitRequest";
149
+ export { ClearedChargingLimitResponse } from "./ClearedChargingLimitResponse";
150
+ export { ClearVariableMonitoringRequest } from "./ClearVariableMonitoringRequest";
151
+ export { ClearVariableMonitoringResponse } from "./ClearVariableMonitoringResponse";
152
+ export { CostUpdatedRequest } from "./CostUpdatedRequest";
153
+ export { CostUpdatedResponse } from "./CostUpdatedResponse";
154
+ export { CustomerInformationRequest } from "./CustomerInformationRequest";
155
+ export { CustomerInformationResponse } from "./CustomerInformationResponse";
156
+ export { DataTransferRequest } from "./DataTransferRequest";
157
+ export { DataTransferResponse } from "./DataTransferResponse";
158
+ export { DeleteCertificateRequest } from "./DeleteCertificateRequest";
159
+ export { DeleteCertificateResponse } from "./DeleteCertificateResponse";
160
+ export { FirmwareStatusNotificationRequest } from "./FirmwareStatusNotificationRequest";
161
+ export { FirmwareStatusNotificationResponse } from "./FirmwareStatusNotificationResponse";
162
+ export { Get15118EVCertificateRequest } from "./Get15118EVCertificateRequest";
163
+ export { Get15118EVCertificateResponse } from "./Get15118EVCertificateResponse";
164
+ export { GetBaseReportRequest } from "./GetBaseReportRequest";
165
+ export { GetBaseReportResponse } from "./GetBaseReportResponse";
166
+ export { GetCertificateStatusRequest } from "./GetCertificateStatusRequest";
167
+ export { GetCertificateStatusResponse } from "./GetCertificateStatusResponse";
168
+ export { GetChargingProfilesRequest } from "./GetChargingProfilesRequest";
169
+ export { GetChargingProfilesResponse } from "./GetChargingProfilesResponse";
170
+ export { GetCompositeScheduleRequest } from "./GetCompositeScheduleRequest";
171
+ export { GetCompositeScheduleResponse } from "./GetCompositeScheduleResponse";
172
+ export { GetDisplayMessagesRequest } from "./GetDisplayMessagesRequest";
173
+ export { GetDisplayMessagesResponse } from "./GetDisplayMessagesResponse";
174
+ export { GetInstalledCertificateIdsRequest } from "./GetInstalledCertificateIdsRequest";
175
+ export { GetInstalledCertificateIdsResponse } from "./GetInstalledCertificateIdsResponse";
176
+ export { GetLocalListVersionRequest } from "./GetLocalListVersionRequest";
177
+ export { GetLocalListVersionResponse } from "./GetLocalListVersionResponse";
178
+ export { GetLogRequest } from "./GetLogRequest";
179
+ export { GetLogResponse } from "./GetLogResponse";
180
+ export { GetMonitoringReportRequest } from "./GetMonitoringReportRequest";
181
+ export { GetMonitoringReportResponse } from "./GetMonitoringReportResponse";
182
+ export { GetReportRequest } from "./GetReportRequest";
183
+ export { GetReportResponse } from "./GetReportResponse";
184
+ export { GetTransactionStatusRequest } from "./GetTransactionStatusRequest";
185
+ export { GetTransactionStatusResponse } from "./GetTransactionStatusResponse";
186
+ export { GetVariablesRequest } from "./GetVariablesRequest";
187
+ export { GetVariablesResponse } from "./GetVariablesResponse";
188
+ export { HeartbeatRequest } from "./HeartbeatRequest";
189
+ export { HeartbeatResponse } from "./HeartbeatResponse";
190
+ export { InstallCertificateRequest } from "./InstallCertificateRequest";
191
+ export { InstallCertificateResponse } from "./InstallCertificateResponse";
192
+ export { LogStatusNotificationRequest } from "./LogStatusNotificationRequest";
193
+ export { LogStatusNotificationResponse } from "./LogStatusNotificationResponse";
194
+ export { MeterValuesRequest } from "./MeterValuesRequest";
195
+ export { MeterValuesResponse } from "./MeterValuesResponse";
196
+ export { NotifyChargingLimitRequest } from "./NotifyChargingLimitRequest";
197
+ export { NotifyChargingLimitResponse } from "./NotifyChargingLimitResponse";
198
+ export { NotifyCustomerInformationRequest } from "./NotifyCustomerInformationRequest";
199
+ export { NotifyCustomerInformationResponse } from "./NotifyCustomerInformationResponse";
200
+ export { NotifyDisplayMessagesRequest } from "./NotifyDisplayMessagesRequest";
201
+ export { NotifyDisplayMessagesResponse } from "./NotifyDisplayMessagesResponse";
202
+ export { NotifyEVChargingNeedsRequest } from "./NotifyEVChargingNeedsRequest";
203
+ export { NotifyEVChargingNeedsResponse } from "./NotifyEVChargingNeedsResponse";
204
+ export { NotifyEVChargingScheduleRequest } from "./NotifyEVChargingScheduleRequest";
205
+ export { NotifyEVChargingScheduleResponse } from "./NotifyEVChargingScheduleResponse";
206
+ export { NotifyEventRequest } from "./NotifyEventRequest";
207
+ export { NotifyEventResponse } from "./NotifyEventResponse";
208
+ export { NotifyMonitoringReportRequest } from "./NotifyMonitoringReportRequest";
209
+ export { NotifyMonitoringReportResponse } from "./NotifyMonitoringReportResponse";
210
+ export { NotifyReportRequest } from "./NotifyReportRequest";
211
+ export { NotifyReportResponse } from "./NotifyReportResponse";
212
+ export { PublishFirmwareRequest } from "./PublishFirmwareRequest";
213
+ export { PublishFirmwareResponse } from "./PublishFirmwareResponse";
214
+ export { PublishFirmwareStatusNotificationRequest } from "./PublishFirmwareStatusNotificationRequest";
215
+ export { PublishFirmwareStatusNotificationResponse } from "./PublishFirmwareStatusNotificationResponse";
216
+ export { ReportChargingProfilesRequest } from "./ReportChargingProfilesRequest";
217
+ export { ReportChargingProfilesResponse } from "./ReportChargingProfilesResponse";
218
+ export { RequestStartTransactionRequest } from "./RequestStartTransactionRequest";
219
+ export { RequestStartTransactionResponse } from "./RequestStartTransactionResponse";
220
+ export { RequestStopTransactionRequest } from "./RequestStopTransactionRequest";
221
+ export { RequestStopTransactionResponse } from "./RequestStopTransactionResponse";
222
+ export { ReservationStatusUpdateRequest } from "./ReservationStatusUpdateRequest";
223
+ export { ReservationStatusUpdateResponse } from "./ReservationStatusUpdateResponse";
224
+ export { ReserveNowRequest } from "./ReserveNowRequest";
225
+ export { ReserveNowResponse } from "./ReserveNowResponse";
226
+ export { ResetRequest } from "./ResetRequest";
227
+ export { ResetResponse } from "./ResetResponse";
228
+ export { SecurityEventNotificationRequest } from "./SecurityEventNotificationRequest";
229
+ export { SecurityEventNotificationResponse } from "./SecurityEventNotificationResponse";
230
+ export { SendLocalListRequest } from "./SendLocalListRequest";
231
+ export { SendLocalListResponse } from "./SendLocalListResponse";
232
+ export { SetChargingProfileRequest } from "./SetChargingProfileRequest";
233
+ export { SetChargingProfileResponse } from "./SetChargingProfileResponse";
234
+ export { SetDisplayMessageRequest } from "./SetDisplayMessageRequest";
235
+ export { SetDisplayMessageResponse } from "./SetDisplayMessageResponse";
236
+ export { SetMonitoringBaseRequest } from "./SetMonitoringBaseRequest";
237
+ export { SetMonitoringBaseResponse } from "./SetMonitoringBaseResponse";
238
+ export { SetMonitoringLevelRequest } from "./SetMonitoringLevelRequest";
239
+ export { SetMonitoringLevelResponse } from "./SetMonitoringLevelResponse";
240
+ export { SetNetworkProfileRequest } from "./SetNetworkProfileRequest";
241
+ export { SetNetworkProfileResponse } from "./SetNetworkProfileResponse";
242
+ export { SetVariableMonitoringRequest } from "./SetVariableMonitoringRequest";
243
+ export { SetVariableMonitoringResponse } from "./SetVariableMonitoringResponse";
244
+ export { SetVariablesRequest } from "./SetVariablesRequest";
245
+ export { SetVariablesResponse } from "./SetVariablesResponse";
246
+ export { SignCertificateRequest } from "./SignCertificateRequest";
247
+ export { SignCertificateResponse } from "./SignCertificateResponse";
248
+ export { StatusNotificationRequest } from "./StatusNotificationRequest";
249
+ export { StatusNotificationResponse } from "./StatusNotificationResponse";
250
+ export { TransactionEventRequest } from "./TransactionEventRequest";
251
+ export { TransactionEventResponse } from "./TransactionEventResponse";
252
+ export { TriggerMessageRequest } from "./TriggerMessageRequest";
253
+ export { TriggerMessageResponse } from "./TriggerMessageResponse";
254
+ export { UnlockConnectorRequest } from "./UnlockConnectorRequest";
255
+ export { UnlockConnectorResponse } from "./UnlockConnectorResponse";
256
+ export { UnpublishFirmwareRequest } from "./UnpublishFirmwareRequest";
257
+ export { UnpublishFirmwareResponse } from "./UnpublishFirmwareResponse";
258
+ export { UpdateFirmwareRequest } from "./UpdateFirmwareRequest";
259
+ export { UpdateFirmwareResponse } from "./UpdateFirmwareResponse";
260
+
131
261
  // Messages sent from Charging Station to CSMS
132
262
  export type ChargingStationAction =
133
263
  | "Authorize"