typed-ocpp
Version:
A library for type-aware parsing, serialization and validation of OCPP 1.6, OCPP 2.0 and OCPP 2.1 messages
61 lines • 2.49 kB
JavaScript
import { assign, EMPTY_ARR } from '../common/utils.js';
import * as schemas_ from './schemas.js';
import { validateCall as validateCall_ } from './call.js';
import { validateCallError as validateCallError_ } from './callerror.js';
import { validateCallResult as validateCallResult_, checkCallResult as checkCallResult_ } from './callresult.js';
import { Action as Action_, MessageType as MessageType_, ErrorCode as ErrorCode_ } from './utils.js';
import { compile } from '../common/ajv.js';
Object.values(schemas_).forEach((schema) => {
compile(schema);
});
;
export var OCPP21;
(function (OCPP21) {
OCPP21.MessageType = MessageType_;
OCPP21.Action = Action_;
OCPP21.ErrorCode = ErrorCode_;
OCPP21.schemas = schemas_;
OCPP21.checkCallResult = checkCallResult_;
OCPP21.validateCall = validateCall_;
OCPP21.validateCallError = validateCallError_;
OCPP21.validateCallResult = validateCallResult_;
OCPP21.validate = assign((data) => {
switch (Array.isArray(data) ? data[0] : null) {
case MessageType_.CALL:
if (!validateCall_(data)) {
OCPP21.validate.errors = validateCall_.errors;
return false;
}
OCPP21.validate.errors = EMPTY_ARR;
return true;
case MessageType_.CALLERROR:
if (!validateCallError_(data)) {
OCPP21.validate.errors = validateCallError_.errors;
return false;
}
OCPP21.validate.errors = EMPTY_ARR;
return true;
case MessageType_.CALLRESULT:
if (!validateCallResult_(data)) {
OCPP21.validate.errors = validateCallResult_.errors;
return false;
}
OCPP21.validate.errors = EMPTY_ARR;
return true;
default:
OCPP21.validate.errors = ['Invalid OCPP message: invalid message type'];
return false;
}
}, { errors: EMPTY_ARR });
OCPP21.isCall = (msg) => {
return msg[0] === MessageType_.CALL || msg[0] === MessageType_.SEND;
};
OCPP21.isCallError = (msg) => {
return msg[0] === MessageType_.CALLERROR || msg[0] === MessageType_.CALLRESULTERROR;
};
OCPP21.isCallResult = (msg) => {
return msg[0] === MessageType_.CALLRESULT;
};
})(OCPP21 || (OCPP21 = {}));
;
//# sourceMappingURL=index.js.map