node-red-contrib-s2 0.2.3 → 0.2.4

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.
@@ -15,21 +15,21 @@ import { NodeRedApp } from '../../types/node-red';
15
15
  *
16
16
  * Input:
17
17
  * S2 "from CEM" messages and enriched instructions forwarded from s2-rm, as-is.
18
- * Confirm-mode message (from your own flow, once hardware state is confirmed):
19
- * { payload: { <mode identifier>, operationModeFactor?: <number> }, cemId?: <string> }
20
- * where <mode identifier> is exactly one of:
21
- * confirmedOperationModeId: <id> - exact operation mode id
22
- * confirmedOperationModeIndex: <number> - 0-based index into the configured operation modes
23
- * confirmedOperationModeLabel: <string> - matches a mode's diagnostic_label (must be unique)
18
+ * ModeConfirmation (from your own flow, once hardware state is confirmed):
19
+ * { topic: 'ModeConfirmation', payload: { <mode ref> }, cemId?: <string> }
20
+ * where <mode ref> is exactly one of:
21
+ * id: <string> - exact operation mode id
22
+ * index: <number> - 0-based index into the configured operation modes
23
+ * label: <string> - matches a mode's diagnostic_label (must be unique)
24
24
  * cemId is optional: if omitted, it resolves to the one CEM currently with OMBC selected (an
25
25
  * error if more than one), or - if none - the confirm is stored as a default status applied to
26
26
  * whichever CEM next selects OMBC with no persisted status of its own.
27
+ * Legacy format (confirmedOperationModeId/Index/Label) is still accepted.
27
28
  *
28
29
  * Output port 1 - instructions:
29
- * OMBC instructions resolved: { payload, cemId, controlType, topic: <mode label>, ombc: { operationMode: {...}, ... } }
30
+ * ModeInstruction: { topic: 'ModeInstruction', payload: { id, index, label, factor }, cemId, rawMessage }
30
31
  * Non-OMBC instructions: passed through unchanged (node status shows a warning).
31
- * StatusRequest notification - sent after SystemDescription when a newly OMBC-selecting CEM has
32
- * neither a persisted status nor a default available: { topic: 'StatusRequest', cemId }
32
+ * ModeRequest: { topic: 'ModeRequest', payload: null, cemId }
33
33
  *
34
34
  * Output port 2 - commands to s2-rm:
35
35
  * { payload: { command: 'SystemDescription', cemId, controlType, ombc } }
@@ -52,30 +52,44 @@
52
52
  <dt>payload <span class="property-type">object</span></dt>
53
53
  <dd>S2 "from CEM" messages and enriched instructions forwarded from <b>s2-rm</b>, as-is.</dd>
54
54
  </dl>
55
- <p>Confirm-mode message, sent from your own flow once the hardware state matches the requested mode:</p>
55
+ <p><code>ModeConfirmation</code>, sent from your own flow once the hardware state matches the requested mode:</p>
56
56
  <dl class="message-properties">
57
- <dt>payload.confirmedOperationModeId <span class="property-type">string</span></dt>
58
- <dd>Id of the operation mode now active on the hardware.</dd>
59
- <dt>payload.operationModeFactor <span class="property-type">number</span></dt>
60
- <dd>Optional. Defaults to 1.</dd>
57
+ <dt>topic <span class="property-type">string</span></dt>
58
+ <dd><code>'ModeConfirmation'</code></dd>
59
+ <dt>payload <span class="property-type">object</span></dt>
60
+ <dd>Exactly one of <code>id</code> (mode id), <code>index</code> (0-based index into the configured operation modes), or <code>label</code> (matches a mode's diagnostic label; must be unique). Optional <code>factor</code>, defaults to 1.</dd>
61
61
  <dt>cemId <span class="property-type">string</span></dt>
62
- <dd>Required. The CEM this confirmation applies to.</dd>
62
+ <dd>Optional. Resolves to the one CEM currently with OMBC selected (error if more than one), or - if none - stored as the default status applied to whichever CEM next selects OMBC.</dd>
63
+ </dl>
64
+ <p>The legacy <code>payload.confirmedOperationModeId</code> / <code>confirmedOperationModeIndex</code> / <code>confirmedOperationModeLabel</code> / <code>operationModeFactor</code> fields are still accepted.</p>
65
+ <p><code>PowerMeasurement</code>, forwarded to <b>s2-rm</b> on this node's second output:</p>
66
+ <dl class="message-properties">
67
+ <dt>topic <span class="property-type">string</span></dt>
68
+ <dd><code>'PowerMeasurement'</code></dd>
69
+ <dt>payload.values <span class="property-type">number | array</span></dt>
70
+ <dd>A number for 3-phase symmetric power, a 3-element array <code>[L1, L2, L3]</code> for per-phase power, or an array of <code>{ commodity_quantity, value }</code> objects passed through as-is.</dd>
71
+ <dt>cemId <span class="property-type">string</span></dt>
72
+ <dd>Optional. Resolves the same way as <code>ModeConfirmation</code>'s cemId, except the message is silently dropped (no output) when no single CEM can be determined.</dd>
63
73
  </dl>
64
74
  <h3>Outputs</h3>
65
75
  <ol class="node-ports">
66
76
  <li>Instructions
67
77
  <dl class="message-properties">
68
78
  <dt>topic <span class="property-type">string</span></dt>
69
- <dd>Resolved mode's diagnostic label, for routing with a Switch node. Only set for resolved OMBC instructions.</dd>
70
- <dt>ombc.operationMode <span class="property-type">object</span></dt>
71
- <dd><code>{ id, index, label, factor, powerRanges }</code> for the resolved mode.</dd>
79
+ <dd><code>'ModeInstruction'</code> for a resolved OMBC instruction, or <code>'ModeRequest'</code> sent after a newly OMBC-selecting CEM has neither a persisted status nor a default available.</dd>
80
+ <dt>payload <span class="property-type">object</span></dt>
81
+ <dd>For <code>ModeInstruction</code>: <code>{ id, index, label, factor }</code> for the resolved mode. For <code>ModeRequest</code>: <code>null</code>.</dd>
82
+ <dt>cemId <span class="property-type">string</span></dt>
83
+ <dd>The CEM this message applies to.</dd>
84
+ <dt>rawMessage <span class="property-type">object</span></dt>
85
+ <dd><code>ModeInstruction</code> only. The original instruction payload received from s2-rm.</dd>
72
86
  </dl>
73
87
  Non-OMBC instructions are passed through unchanged (node status shows a warning), so this node can be wired in parallel with s2-pebc downstream of the same s2-rm.
74
88
  </li>
75
89
  <li>To s2-rm
76
90
  <dl class="message-properties">
77
91
  <dt>payload <span class="property-type">object</span></dt>
78
- <dd><code>{ command: 'SystemDescription', cemId, controlType, ombc }</code> or <code>{ command: 'UpdateStatus', cemId, controlType, ombc }</code>. Wire to s2-rm's input.</dd>
92
+ <dd><code>{ command: 'SystemDescription', cemId, controlType, ombc }</code>, <code>{ command: 'UpdateStatus', cemId, controlType, ombc }</code>, or <code>{ command: 'PowerMeasurement', cemId, values }</code>. Wire to s2-rm's input.</dd>
79
93
  </dl>
80
94
  </li>
81
95
  </ol>
@@ -42,18 +42,16 @@ module.exports = function (RED) {
42
42
  function setDefaultStatus(status) {
43
43
  node.context().set(DEFAULT_STATUS_KEY, status);
44
44
  }
45
- // Resolves a confirm message's mode identifier - exactly one of confirmedOperationModeId /
46
- // confirmedOperationModeIndex / confirmedOperationModeLabel - down to a configured mode's
47
- // canonical id. All three are validated against systemDescription.operationModes: an id must
48
- // match a configured mode, an index must be in range, and a label must match exactly one mode
49
- // (diagnostic_label is optional and not declared unique by the S2 schema).
45
+ // Resolves a mode identifier from payload down to a configured mode's canonical id.
46
+ // Accepts new format (id/index/label) and legacy format (confirmedOperationModeId/Index/Label).
50
47
  function resolveModeIdentifier(payload) {
51
- const idField = payload.confirmedOperationModeId;
52
- const indexField = payload.confirmedOperationModeIndex;
53
- const labelField = payload.confirmedOperationModeLabel;
48
+ var _a, _b, _c;
49
+ const idField = (_a = payload.id) !== null && _a !== void 0 ? _a : payload.confirmedOperationModeId;
50
+ const indexField = (_b = payload.index) !== null && _b !== void 0 ? _b : payload.confirmedOperationModeIndex;
51
+ const labelField = (_c = payload.label) !== null && _c !== void 0 ? _c : payload.confirmedOperationModeLabel;
54
52
  const providedCount = [idField, indexField, labelField].filter(v => v !== undefined).length;
55
53
  if (providedCount !== 1) {
56
- return { error: 'Confirm message requires exactly one of confirmedOperationModeId, confirmedOperationModeIndex, or confirmedOperationModeLabel' };
54
+ return { error: 'Confirm message requires exactly one of id, index, or label (or legacy confirmedOperationModeId/Index/Label)' };
57
55
  }
58
56
  const modes = (systemDescription.operationModes || []);
59
57
  if (idField !== undefined) {
@@ -98,6 +96,11 @@ module.exports = function (RED) {
98
96
  powerRanges: (mode === null || mode === void 0 ? void 0 : mode.power_ranges) || []
99
97
  };
100
98
  }
99
+ function modeLabelOrId(modeId) {
100
+ const modes = (systemDescription.operationModes || []);
101
+ const mode = modes.find(m => m.id === modeId);
102
+ return (mode === null || mode === void 0 ? void 0 : mode.diagnostic_label) || modeId;
103
+ }
101
104
  function handleInstruction(msg) {
102
105
  if (msg.controlType !== messages_1.ControlType.OMBC) {
103
106
  node.status({ fill: 'yellow', shape: 'ring', text: `ignoring ${String(msg.controlType)} instruction` });
@@ -106,13 +109,18 @@ module.exports = function (RED) {
106
109
  }
107
110
  const rawInstr = (msg.ombc || msg.payload);
108
111
  const resolved = resolveMode(rawInstr);
109
- const outMsg = { ...msg };
110
112
  if (resolved) {
111
- outMsg.topic = resolved.label;
112
- outMsg.ombc = { ...(msg.ombc || {}), operationMode: resolved };
113
113
  node.status({ fill: 'green', shape: 'dot', text: resolved.label });
114
+ node.send([{
115
+ topic: 'ModeInstruction',
116
+ payload: { id: resolved.id, index: resolved.index, label: resolved.label, factor: resolved.factor },
117
+ cemId: msg.cemId,
118
+ rawMessage: msg.payload
119
+ }, null]);
120
+ }
121
+ else {
122
+ node.send([{ ...msg }, null]);
114
123
  }
115
- node.send([outMsg, null]);
116
124
  }
117
125
  function handleSelectControlType(msg) {
118
126
  const cemId = msg.cemId;
@@ -136,10 +144,11 @@ module.exports = function (RED) {
136
144
  node.send([null, { payload: { command: 'UpdateStatus', cemId, controlType: messages_1.ControlType.OMBC, ombc: status } }]);
137
145
  }
138
146
  else {
139
- node.send([{ topic: 'StatusRequest', cemId }, null]);
147
+ node.send([{ topic: 'ModeRequest', payload: null, cemId }, null]);
140
148
  }
141
149
  }
142
150
  function handleConfirm(msg, done) {
151
+ var _a;
143
152
  const payload = msg.payload;
144
153
  const resolution = resolveModeIdentifier(payload);
145
154
  if ('error' in resolution) {
@@ -160,14 +169,14 @@ module.exports = function (RED) {
160
169
  cemId = ombcCemIds[0];
161
170
  }
162
171
  }
163
- const factor = payload.operationModeFactor;
172
+ const factor = (_a = payload.factor) !== null && _a !== void 0 ? _a : payload.operationModeFactor;
164
173
  const operationModeFactor = typeof factor === 'number' ? factor : 1;
165
174
  if (!cemId) {
166
175
  // No CEM currently has OMBC selected (pre-connection, or after a disconnect) - store as
167
176
  // the default status for whichever CEM next selects OMBC, per "Pre-connection default
168
177
  // status" in the spec.
169
178
  setDefaultStatus({ activeOperationModeId: modeId, operationModeFactor });
170
- node.status({ fill: 'blue', shape: 'dot', text: `default: ${modeId}` });
179
+ node.status({ fill: 'blue', shape: 'dot', text: `default: ${modeLabelOrId(modeId)}` });
171
180
  done();
172
181
  return;
173
182
  }
@@ -190,7 +199,7 @@ module.exports = function (RED) {
190
199
  };
191
200
  }
192
201
  setPersistedStatus(cemId, status);
193
- node.status({ fill: 'green', shape: 'dot', text: `confirmed: ${modeId}` });
202
+ node.status({ fill: 'green', shape: 'dot', text: `Confirmed: ${modeLabelOrId(modeId)}` });
194
203
  node.send([null, { payload: { command: 'UpdateStatus', cemId, controlType: messages_1.ControlType.OMBC, ombc: status } }]);
195
204
  done();
196
205
  }
@@ -210,10 +219,49 @@ module.exports = function (RED) {
210
219
  done();
211
220
  return;
212
221
  }
213
- if ('confirmedOperationModeId' in payload || 'confirmedOperationModeIndex' in payload || 'confirmedOperationModeLabel' in payload) {
222
+ if (topic === 'ModeConfirmation' ||
223
+ 'confirmedOperationModeId' in payload || 'confirmedOperationModeIndex' in payload || 'confirmedOperationModeLabel' in payload) {
214
224
  handleConfirm(msg, done);
215
225
  return;
216
226
  }
227
+ if (topic === 'PowerMeasurement') {
228
+ let pmCemId = msg.cemId;
229
+ if (!pmCemId) {
230
+ const ombcCemIds = Array.from(cemStates.entries())
231
+ .filter(([, state]) => state.selectedControlType === messages_1.ControlType.OMBC)
232
+ .map(([id]) => id);
233
+ if (ombcCemIds.length === 1) {
234
+ pmCemId = ombcCemIds[0];
235
+ }
236
+ else {
237
+ done();
238
+ return;
239
+ }
240
+ }
241
+ const rawValues = payload.values;
242
+ // values: 3000 → 3-phase symmetric; values: [L1, L2, L3] → per-phase
243
+ let values;
244
+ if (typeof rawValues === 'number') {
245
+ values = [{ commodity_quantity: 'ELECTRIC.POWER.3_PHASE_SYMMETRIC', value: rawValues }];
246
+ }
247
+ else if (Array.isArray(rawValues) && rawValues.length === 3 && typeof rawValues[0] === 'number') {
248
+ values = [
249
+ { commodity_quantity: 'ELECTRIC.POWER.L1', value: rawValues[0] },
250
+ { commodity_quantity: 'ELECTRIC.POWER.L2', value: rawValues[1] },
251
+ { commodity_quantity: 'ELECTRIC.POWER.L3', value: rawValues[2] }
252
+ ];
253
+ }
254
+ else if (Array.isArray(rawValues) && rawValues.length > 0 && typeof rawValues[0] === 'object') {
255
+ values = rawValues;
256
+ }
257
+ else {
258
+ done(new Error('PowerMeasurement values must be a number (3-phase symmetric), a 3-element array [L1, L2, L3], or an array of {commodity_quantity, value} objects'));
259
+ return;
260
+ }
261
+ node.send([null, { payload: { command: 'PowerMeasurement', cemId: pmCemId, values } }]);
262
+ done();
263
+ return;
264
+ }
217
265
  if ('controlType' in msg) {
218
266
  handleInstruction(msg);
219
267
  done();
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/nodes/s2-ombc/index.ts"],"names":[],"mappings":";AAEA,oDAA+G;AAY/G,MAAM,2BAA2B,GAAG,eAAe,CAAA;AACnD,MAAM,kBAAkB,GAAG,qBAAqB,CAAA;AAwChD,iBAAS,UAAU,GAAe;IAChC,SAAS,UAAU,CAAqB,MAAwB;QAC9D,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;QAClC,MAAM,IAAI,GAAG,IAAI,CAAA;QAEjB,MAAM,cAAc,GAAG,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,CAA4B,CAAA;QACtF,IAAI,CAAC,cAAc,EAAE,CAAC;YACpB,IAAI,CAAC,KAAK,CAAC,8EAA8E,CAAC,CAAA;YAC1F,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,gBAAgB,EAAE,CAAC,CAAA;YAClE,OAAM;QACR,CAAC;QAED,IAAI,iBAAiB,GAAgC,EAAE,cAAc,EAAE,EAAE,EAAE,WAAW,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,CAAA;QACxG,IAAI,cAAc,CAAC,iBAAiB,EAAE,CAAC;YACrC,IAAI,CAAC;gBACH,iBAAiB,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,iBAAiB,CAAgC,CAAA;YACjG,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,IAAI,CAAC,KAAK,CAAC,wCAAwC,GAAI,CAAW,CAAC,OAAO,CAAC,CAAA;YAC7E,CAAC;QACH,CAAC;QAED,MAAM,SAAS,GAAG,IAAI,GAAG,EAAoB,CAAA;QAE7C,SAAS,gBAAgB,CAAE,KAAa;YACtC,IAAI,KAAK,GAAG,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;YAChC,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,KAAK,GAAG,EAAE,mBAAmB,EAAE,IAAI,EAAE,CAAA;gBACrC,SAAS,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA;YAC7B,CAAC;YACD,OAAO,KAAK,CAAA;QACd,CAAC;QAED,SAAS,kBAAkB,CAAE,KAAa;YACxC,OAAQ,IAAI,CAAC,OAAO,EAAE,CAAC,GAAG,CAAC,2BAA2B,GAAG,KAAK,CAAkC,IAAI,IAAI,CAAA;QAC1G,CAAC;QAED,SAAS,kBAAkB,CAAE,KAAa,EAAE,MAAwB;YAClE,IAAI,CAAC,OAAO,EAAE,CAAC,GAAG,CAAC,2BAA2B,GAAG,KAAK,EAAE,MAAM,CAAC,CAAA;QACjE,CAAC;QAED,SAAS,gBAAgB;YACvB,OAAQ,IAAI,CAAC,OAAO,EAAE,CAAC,GAAG,CAAC,kBAAkB,CAAkC,IAAI,IAAI,CAAA;QACzF,CAAC;QAED,SAAS,gBAAgB,CAAE,MAAwB;YACjD,IAAI,CAAC,OAAO,EAAE,CAAC,GAAG,CAAC,kBAAkB,EAAE,MAAM,CAAC,CAAA;QAChD,CAAC;QAED,2FAA2F;QAC3F,0FAA0F;QAC1F,6FAA6F;QAC7F,8FAA8F;QAC9F,2EAA2E;QAC3E,SAAS,qBAAqB,CAAE,OAAgC;YAC9D,MAAM,OAAO,GAAG,OAAO,CAAC,wBAAwB,CAAA;YAChD,MAAM,UAAU,GAAG,OAAO,CAAC,2BAA2B,CAAA;YACtD,MAAM,UAAU,GAAG,OAAO,CAAC,2BAA2B,CAAA;YACtD,MAAM,aAAa,GAAG,CAAC,OAAO,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,SAAS,CAAC,CAAC,MAAM,CAAA;YAE3F,IAAI,aAAa,KAAK,CAAC,EAAE,CAAC;gBACxB,OAAO,EAAE,KAAK,EAAE,+HAA+H,EAAE,CAAA;YACnJ,CAAC;YAED,MAAM,KAAK,GAAG,CAAC,iBAAiB,CAAC,cAAc,IAAI,EAAE,CAAmC,CAAA;YAExF,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;gBAC1B,MAAM,MAAM,GAAG,OAAiB,CAAA;gBAChC,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,MAAM,CAAC,CAAA;gBAC9C,IAAI,CAAC,KAAK,EAAE,CAAC;oBACX,OAAO,EAAE,KAAK,EAAE,6BAA6B,MAAM,gDAAgD,EAAE,CAAA;gBACvG,CAAC;gBACD,OAAO,EAAE,EAAE,EAAE,MAAM,EAAE,CAAA;YACvB,CAAC;YAED,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;gBAC7B,MAAM,KAAK,GAAG,UAAoB,CAAA;gBAClC,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,IAAI,KAAK,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;oBAChG,OAAO,EAAE,KAAK,EAAE,+BAA+B,MAAM,CAAC,KAAK,CAAC,uBAAuB,KAAK,CAAC,MAAM,GAAG,CAAC,GAAG,EAAE,CAAA;gBAC1G,CAAC;gBACD,OAAO,EAAE,EAAE,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,EAAY,EAAE,CAAA;YAC1C,CAAC;YAED,MAAM,KAAK,GAAG,UAAoB,CAAA;YAClC,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,gBAAgB,KAAK,KAAK,CAAC,CAAA;YAC/D,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACzB,OAAO,EAAE,KAAK,EAAE,gCAAgC,KAAK,gDAAgD,EAAE,CAAA;YACzG,CAAC;YACD,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACvB,OAAO,EAAE,KAAK,EAAE,gCAAgC,KAAK,mDAAmD,EAAE,CAAA;YAC5G,CAAC;YACD,OAAO,EAAE,EAAE,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,EAAY,EAAE,CAAA;QACxC,CAAC;QAED,SAAS,WAAW,CAAE,QAAiC;;YACrD,MAAM,MAAM,GAAG,CAAC,QAAQ,CAAC,iBAAiB,IAAI,QAAQ,CAAC,cAAc,CAAuB,CAAA;YAC5F,IAAI,CAAC,MAAM;gBAAE,OAAO,IAAI,CAAA;YACxB,MAAM,MAAM,GAAG,OAAO,QAAQ,CAAC,qBAAqB,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC,CAAA;YACtG,MAAM,KAAK,GAAG,iBAAiB,CAAC,cAA4D,CAAA;YAC5F,MAAM,SAAS,GAAG,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,MAAM,CAAC,mCAAI,CAAC,CAAC,CAAA;YAC9D,MAAM,IAAI,GAAG,SAAS,IAAI,CAAC,CAAC,CAAC,CAAC,KAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;YAC3D,OAAO;gBACL,EAAE,EAAE,MAAM;gBACV,KAAK,EAAE,SAAS;gBAChB,KAAK,EAAE,CAAC,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,gBAAuC,KAAI,MAAM;gBAC/D,MAAM;gBACN,WAAW,EAAE,CAAC,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,YAAsC,KAAI,EAAE;aACjE,CAAA;QACH,CAAC;QAED,SAAS,iBAAiB,CAAE,GAAgB;YAC1C,IAAI,GAAG,CAAC,WAAW,KAAK,sBAAW,CAAC,IAAI,EAAE,CAAC;gBACzC,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,cAAc,EAAE,CAAC,CAAA;gBACvG,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CAAA;gBACtB,OAAM;YACR,CAAC;YACD,MAAM,QAAQ,GAAG,CAAC,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,OAAO,CAA4B,CAAA;YACrE,MAAM,QAAQ,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAA;YACtC,MAAM,MAAM,GAAgB,EAAE,GAAG,GAAG,EAAE,CAAA;YACtC,IAAI,QAAQ,EAAE,CAAC;gBACb,MAAM,CAAC,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAA;gBAC7B,MAAM,CAAC,IAAI,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC,IAAc,IAAI,EAAE,CAAC,EAAE,aAAa,EAAE,QAAQ,EAAE,CAAA;gBACxE,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAA;YACpE,CAAC;YACD,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAA;QAC3B,CAAC;QAED,SAAS,uBAAuB,CAAE,GAAgB;YAChD,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAA;YACvB,IAAI,CAAC,KAAK;gBAAE,OAAM;YAClB,MAAM,OAAO,GAAG,GAAG,CAAC,OAAkC,CAAA;YACtD,MAAM,WAAW,GAAG,OAAO,CAAC,YAAsB,CAAA;YAClD,gBAAgB,CAAC,KAAK,CAAC,CAAC,mBAAmB,GAAG,WAAW,CAAA;YACzD,IAAI,WAAW,KAAK,sBAAW,CAAC,IAAI;gBAAE,OAAM;YAE5C,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,mBAAmB,EAAE,KAAK,EAAE,WAAW,EAAE,sBAAW,CAAC,IAAI,EAAE,IAAI,EAAE,iBAAiB,EAAE,EAAE,CAAC,CAAC,CAAA;YAE/H,IAAI,MAAM,GAAG,kBAAkB,CAAC,KAAK,CAAC,CAAA;YACtC,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,MAAM,aAAa,GAAG,gBAAgB,EAAE,CAAA;gBACxC,IAAI,aAAa,EAAE,CAAC;oBAClB,kBAAkB,CAAC,KAAK,EAAE,aAAa,CAAC,CAAA;oBACxC,MAAM,GAAG,aAAa,CAAA;gBACxB,CAAC;YACH,CAAC;YAED,IAAI,MAAM,EAAE,CAAC;gBACX,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,cAAc,EAAE,KAAK,EAAE,WAAW,EAAE,sBAAW,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC,CAAA;YACjH,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,KAAK,EAAE,eAAe,EAAE,KAAK,EAAE,EAAE,IAAI,CAAC,CAAC,CAAA;YACtD,CAAC;QACH,CAAC;QAED,SAAS,aAAa,CAAE,GAAgB,EAAE,IAAkB;YAC1D,MAAM,OAAO,GAAG,GAAG,CAAC,OAAkC,CAAA;YAEtD,MAAM,UAAU,GAAG,qBAAqB,CAAC,OAAO,CAAC,CAAA;YACjD,IAAI,OAAO,IAAI,UAAU,EAAE,CAAC;gBAC1B,IAAI,CAAC,IAAI,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAA;gBACjC,OAAM;YACR,CAAC;YACD,MAAM,MAAM,GAAG,UAAU,CAAC,EAAE,CAAA;YAE5B,IAAI,KAAK,GAAG,GAAG,CAAC,KAA2B,CAAA;YAC3C,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;qBAC/C,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,mBAAmB,KAAK,sBAAW,CAAC,IAAI,CAAC;qBACrE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,CAAA;gBACpB,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC1B,IAAI,CAAC,IAAI,KAAK,CAAC,wGAAwG,CAAC,CAAC,CAAA;oBACzH,OAAM;gBACR,CAAC;gBACD,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBAC5B,KAAK,GAAG,UAAU,CAAC,CAAC,CAAC,CAAA;gBACvB,CAAC;YACH,CAAC;YAED,MAAM,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAA;YAC1C,MAAM,mBAAmB,GAAG,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAA;YAEnE,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,wFAAwF;gBACxF,sFAAsF;gBACtF,uBAAuB;gBACvB,gBAAgB,CAAC,EAAE,qBAAqB,EAAE,MAAM,EAAE,mBAAmB,EAAE,CAAC,CAAA;gBACxE,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,YAAY,MAAM,EAAE,EAAE,CAAC,CAAA;gBACvE,IAAI,EAAE,CAAA;gBACN,OAAM;YACR,CAAC;YAED,MAAM,KAAK,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAA;YACrC,IAAI,KAAK,CAAC,mBAAmB,KAAK,sBAAW,CAAC,IAAI,EAAE,CAAC;gBACnD,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,qCAAqC,EAAE,CAAC,CAAA;gBAC3F,IAAI,EAAE,CAAA;gBACN,OAAM;YACR,CAAC;YAED,MAAM,QAAQ,GAAG,kBAAkB,CAAC,KAAK,CAAC,CAAA;YAC1C,IAAI,MAAM,GAAqB;gBAC7B,qBAAqB,EAAE,MAAM;gBAC7B,mBAAmB;aACpB,CAAA;YACD,IAAI,QAAQ,IAAI,QAAQ,CAAC,qBAAqB,KAAK,MAAM,EAAE,CAAC;gBAC1D,MAAM,GAAG;oBACP,GAAG,MAAM;oBACT,uBAAuB,EAAE,QAAQ,CAAC,qBAAqB;oBACvD,mBAAmB,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;iBAC9C,CAAA;YACH,CAAC;YACD,kBAAkB,CAAC,KAAK,EAAE,MAAM,CAAC,CAAA;YACjC,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,cAAc,MAAM,EAAE,EAAE,CAAC,CAAA;YAC1E,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,cAAc,EAAE,KAAK,EAAE,WAAW,EAAE,sBAAW,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC,CAAA;YAC/G,IAAI,EAAE,CAAA;QACR,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAA;QAE1D,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;YACpC,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAA;YACvB,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAA;YAEvB,IAAI,KAAK,KAAK,cAAc,IAAI,KAAK,EAAE,CAAC;gBACtC,MAAM,KAAK,GAAG,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;gBAClC,IAAI,KAAK;oBAAE,KAAK,CAAC,mBAAmB,GAAG,IAAI,CAAA;gBAC3C,IAAI,EAAE,CAAA;gBACN,OAAM;YACR,CAAC;YAED,MAAM,OAAO,GAAG,GAAG,CAAC,OAA8C,CAAA;YAClE,IAAI,CAAC,OAAO,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;gBAC5C,IAAI,EAAE,CAAA;gBACN,OAAM;YACR,CAAC;YAED,IAAI,0BAA0B,IAAI,OAAO,IAAI,6BAA6B,IAAI,OAAO,IAAI,6BAA6B,IAAI,OAAO,EAAE,CAAC;gBAClI,aAAa,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;gBACxB,OAAM;YACR,CAAC;YAED,IAAI,aAAa,IAAI,GAAG,EAAE,CAAC;gBACzB,iBAAiB,CAAC,GAAG,CAAC,CAAA;gBACtB,IAAI,EAAE,CAAA;gBACN,OAAM;YACR,CAAC;YAED,IAAI,OAAO,CAAC,YAAY,KAAK,sBAAW,CAAC,mBAAmB,EAAE,CAAC;gBAC7D,uBAAuB,CAAC,GAAG,CAAC,CAAA;gBAC5B,IAAI,EAAE,CAAA;gBACN,OAAM;YACR,CAAC;YAED,IAAI,EAAE,CAAA;QACR,CAAC,CAAC,CAAA;IACJ,CAAC;IAED,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC,SAAS,EAAE,UAAU,CAAC,CAAA;AAC/C,CAAC,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/nodes/s2-ombc/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "node-red-contrib-s2",
3
- "version": "0.2.3",
3
+ "version": "0.2.4",
4
4
  "description": "Node-RED nodes for S2 energy management protocol (EN 50491-12-2)",
5
5
  "author": "Victron Energy BV",
6
6
  "repository": {