Commit | Line | Data |
---|---|---|
a6ef1ece JB |
1 | import { |
2 | type ConnectorStatusTransition, | |
66a7748d JB |
3 | OCPP20ConnectorStatusEnumType |
4 | } from '../../../types/index.js' | |
5 | import { OCPPConstants } from '../OCPPConstants.js' | |
48b75072 | 6 | |
48b75072 | 7 | export class OCPP20Constants extends OCPPConstants { |
0a376442 JB |
8 | static readonly ChargingStationStatusTransitions: Readonly<ConnectorStatusTransition[]> = |
9 | Object.freeze([ | |
10 | { to: OCPP20ConnectorStatusEnumType.Available }, | |
11 | // { from: OCPP20ConnectorStatusEnumType.Available, to: OCPP20ConnectorStatusEnumType.Available }, | |
12 | { | |
13 | from: OCPP20ConnectorStatusEnumType.Available, | |
66a7748d | 14 | to: OCPP20ConnectorStatusEnumType.Unavailable |
0a376442 | 15 | }, |
48847bc0 JB |
16 | { |
17 | from: OCPP20ConnectorStatusEnumType.Available, | |
18 | to: OCPP20ConnectorStatusEnumType.Faulted | |
19 | }, | |
0a376442 JB |
20 | { to: OCPP20ConnectorStatusEnumType.Unavailable }, |
21 | { | |
22 | from: OCPP20ConnectorStatusEnumType.Unavailable, | |
66a7748d | 23 | to: OCPP20ConnectorStatusEnumType.Available |
0a376442 JB |
24 | }, |
25 | // { | |
26 | // from: OCPP20ConnectorStatusEnumType.Unavailable, | |
77b4dcc3 | 27 | // to: OCPP20ConnectorStatusEnumType.Unavailable |
0a376442 JB |
28 | // }, |
29 | { | |
30 | from: OCPP20ConnectorStatusEnumType.Unavailable, | |
66a7748d | 31 | to: OCPP20ConnectorStatusEnumType.Faulted |
0a376442 JB |
32 | }, |
33 | { to: OCPP20ConnectorStatusEnumType.Faulted }, | |
48847bc0 JB |
34 | { |
35 | from: OCPP20ConnectorStatusEnumType.Faulted, | |
36 | to: OCPP20ConnectorStatusEnumType.Available | |
37 | }, | |
0a376442 JB |
38 | { |
39 | from: OCPP20ConnectorStatusEnumType.Faulted, | |
66a7748d JB |
40 | to: OCPP20ConnectorStatusEnumType.Unavailable |
41 | } | |
fbf3577e | 42 | // { from: OCPP20ConnectorStatusEnumType.Faulted, to: OCPP20ConnectorStatusEnumType.Faulted } |
66a7748d | 43 | ]) |
48b75072 | 44 | |
0a376442 JB |
45 | static readonly ConnectorStatusTransitions: Readonly<ConnectorStatusTransition[]> = Object.freeze( |
46 | [ | |
47 | { to: OCPP20ConnectorStatusEnumType.Available }, | |
48 | // { from: OCPP20ConnectorStatusEnumType.Available, to: OCPP20ConnectorStatusEnumType.Available }, | |
48847bc0 JB |
49 | { |
50 | from: OCPP20ConnectorStatusEnumType.Available, | |
51 | to: OCPP20ConnectorStatusEnumType.Occupied | |
52 | }, | |
53 | { | |
54 | from: OCPP20ConnectorStatusEnumType.Available, | |
55 | to: OCPP20ConnectorStatusEnumType.Reserved | |
56 | }, | |
0a376442 JB |
57 | { |
58 | from: OCPP20ConnectorStatusEnumType.Available, | |
66a7748d | 59 | to: OCPP20ConnectorStatusEnumType.Unavailable |
0a376442 | 60 | }, |
48847bc0 JB |
61 | { |
62 | from: OCPP20ConnectorStatusEnumType.Available, | |
63 | to: OCPP20ConnectorStatusEnumType.Faulted | |
64 | }, | |
0a376442 | 65 | // { to: OCPP20ConnectorStatusEnumType.Occupied }, |
48847bc0 JB |
66 | { |
67 | from: OCPP20ConnectorStatusEnumType.Occupied, | |
68 | to: OCPP20ConnectorStatusEnumType.Available | |
69 | }, | |
0a376442 JB |
70 | // { from: OCPP20ConnectorStatusEnumType.Occupied, to: OCPP20ConnectorStatusEnumType.Occupied }, |
71 | // { from: OCPP20ConnectorStatusEnumType.Occupied, to: OCPP20ConnectorStatusEnumType.Reserved }, | |
72 | { | |
73 | from: OCPP20ConnectorStatusEnumType.Occupied, | |
66a7748d | 74 | to: OCPP20ConnectorStatusEnumType.Unavailable |
0a376442 | 75 | }, |
48847bc0 JB |
76 | { |
77 | from: OCPP20ConnectorStatusEnumType.Occupied, | |
78 | to: OCPP20ConnectorStatusEnumType.Faulted | |
79 | }, | |
0a376442 | 80 | // { to: OCPP20ConnectorStatusEnumType.Reserved }, |
48847bc0 JB |
81 | { |
82 | from: OCPP20ConnectorStatusEnumType.Reserved, | |
83 | to: OCPP20ConnectorStatusEnumType.Available | |
84 | }, | |
85 | { | |
86 | from: OCPP20ConnectorStatusEnumType.Reserved, | |
87 | to: OCPP20ConnectorStatusEnumType.Occupied | |
88 | }, | |
0a376442 JB |
89 | // { from: OCPP20ConnectorStatusEnumType.Reserved, to: OCPP20ConnectorStatusEnumType.Reserved }, |
90 | { | |
91 | from: OCPP20ConnectorStatusEnumType.Reserved, | |
66a7748d | 92 | to: OCPP20ConnectorStatusEnumType.Unavailable |
0a376442 | 93 | }, |
48847bc0 JB |
94 | { |
95 | from: OCPP20ConnectorStatusEnumType.Reserved, | |
96 | to: OCPP20ConnectorStatusEnumType.Faulted | |
97 | }, | |
0a376442 JB |
98 | { to: OCPP20ConnectorStatusEnumType.Unavailable }, |
99 | { | |
100 | from: OCPP20ConnectorStatusEnumType.Unavailable, | |
66a7748d | 101 | to: OCPP20ConnectorStatusEnumType.Available |
0a376442 JB |
102 | }, |
103 | { | |
104 | from: OCPP20ConnectorStatusEnumType.Unavailable, | |
66a7748d | 105 | to: OCPP20ConnectorStatusEnumType.Occupied |
0a376442 JB |
106 | }, |
107 | // { from: OCPP20ConnectorStatusEnumType.Unavailable, to: OCPP20ConnectorStatusEnumType.Reserved }, | |
108 | // { from: OCPP20ConnectorStatusEnumType.Unavailable, to: OCPP20ConnectorStatusEnumType.Unavailable }, | |
109 | { | |
110 | from: OCPP20ConnectorStatusEnumType.Unavailable, | |
66a7748d | 111 | to: OCPP20ConnectorStatusEnumType.Faulted |
0a376442 JB |
112 | }, |
113 | { to: OCPP20ConnectorStatusEnumType.Faulted }, | |
48847bc0 JB |
114 | { |
115 | from: OCPP20ConnectorStatusEnumType.Faulted, | |
116 | to: OCPP20ConnectorStatusEnumType.Available | |
117 | }, | |
118 | { | |
119 | from: OCPP20ConnectorStatusEnumType.Faulted, | |
120 | to: OCPP20ConnectorStatusEnumType.Occupied | |
121 | }, | |
122 | { | |
123 | from: OCPP20ConnectorStatusEnumType.Faulted, | |
124 | to: OCPP20ConnectorStatusEnumType.Reserved | |
125 | }, | |
0a376442 JB |
126 | { |
127 | from: OCPP20ConnectorStatusEnumType.Faulted, | |
66a7748d JB |
128 | to: OCPP20ConnectorStatusEnumType.Unavailable |
129 | } | |
a4385edc | 130 | // { from: OCPP20ConnectorStatusEnumType.Faulted, to: OCPP20ConnectorStatusEnumType.Faulted } |
66a7748d JB |
131 | ] |
132 | ) | |
48b75072 | 133 | } |