node-red-contrib-modbus-modpackqt 3.3.0 → 3.3.1

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/CHANGELOG.md CHANGED
@@ -4,6 +4,15 @@ All notable changes to **node-red-contrib-modbus-modpackqt** are documented
4
4
  here. This project follows [Semantic Versioning](https://semver.org/) — pin a
5
5
  major version (`^2.0.0`) in production.
6
6
 
7
+ ## [3.3.1] — 2026-05-10
8
+
9
+ ### Changed
10
+
11
+ - **Account Key section is now collapsed by default** in the runtime config
12
+ dialog. It's only relevant for probe-node deep-linking and the optional
13
+ cloud profile picker — master-read / write and slave-read / write users
14
+ never need it. Auto-expands if a key is already saved.
15
+
7
16
  ## [3.3.0] — 2026-05-10
8
17
 
9
18
  ### Changed — Runtime config = one device
@@ -18,7 +18,7 @@
18
18
  const http = require('http');
19
19
  const { URL } = require('url');
20
20
 
21
- const PALETTE_VERSION = '3.3.0';
21
+ const PALETTE_VERSION = '3.3.1';
22
22
  const DEFAULT_PORT = parseInt(process.env.MODPACKQT_PROBE_PORT, 10) || 8502;
23
23
  const BIND_HOST = process.env.MODPACKQT_PROBE_HOST || '127.0.0.1';
24
24
  const PORT_RETRY = 5;
@@ -103,6 +103,23 @@
103
103
  e.preventDefault();
104
104
  setSlaveOpen($slaveSection.is(':hidden'));
105
105
  });
106
+
107
+ // ── Account Key section (collapsed by default — only relevant for the
108
+ // My Profiles picker and for probe nodes that deep-link the cloud).
109
+ const $keySection = $('.modpackqt-key-section');
110
+ const $keyToggle = $('.modpackqt-key-section-toggle');
111
+ const setKeyOpen = (open) => {
112
+ $keySection.toggle(open);
113
+ $keyToggle.html(open
114
+ ? '▾ Hide ModPackQT Account Key'
115
+ : '▸ ModPackQT Account Key (only for probe nodes & cloud profile sync)');
116
+ };
117
+ const hasKey = !!(this.credentials && this.credentials.has && this.credentials.has.apiKey);
118
+ setKeyOpen(hasKey);
119
+ $keyToggle.off('click.modpackqt').on('click.modpackqt', (e) => {
120
+ e.preventDefault();
121
+ setKeyOpen($keySection.is(':hidden'));
122
+ });
106
123
  }
107
124
  });
108
125
  </script>
@@ -176,14 +193,18 @@
176
193
  <input type="number" id="node-config-input-timeoutMs" placeholder="3000">
177
194
  </div>
178
195
 
179
- <h4 style="margin-top:18px">ModPackQT Account Key (optional for cloud profile sync)</h4>
180
- <div class="form-row">
181
- <label for="node-config-input-apiKey"><i class="fa fa-key"></i> Account Key</label>
182
- <input type="password" id="node-config-input-apiKey" placeholder="Optional — paste your tunnel key for the profile picker">
196
+ <div class="form-row" style="margin:14px 0 4px 0;border-top:1px solid #e5e7eb;padding-top:10px">
197
+ <a href="#" class="modpackqt-key-section-toggle" style="font-size:12px;color:#6b7280;text-decoration:none;cursor:pointer">▸ ModPackQT Account Key (only for probe nodes &amp; cloud profile sync)</a>
183
198
  </div>
184
- <div class="form-tips" style="font-size:11px;color:#6b7280;margin-top:-6px">
185
- Generate at <a href="https://modpackqt.com/settings" target="_blank" rel="noopener">modpackqt.com → Settings → Cloud Gateways</a>.
186
- All Modbus traffic stays local — the key is only used for read-only profile sync.
199
+ <div class="modpackqt-key-section" style="display:none">
200
+ <div class="form-row">
201
+ <label for="node-config-input-apiKey"><i class="fa fa-key"></i> Account Key</label>
202
+ <input type="password" id="node-config-input-apiKey" placeholder="Optional — paste your tunnel key for the profile picker">
203
+ </div>
204
+ <div class="form-tips" style="font-size:11px;color:#6b7280;margin-top:-6px">
205
+ Generate at <a href="https://modpackqt.com/settings" target="_blank" rel="noopener">modpackqt.com → Settings → Cloud Gateways</a>.
206
+ All Modbus traffic stays local — the key is only used for read-only profile sync.
207
+ </div>
187
208
  </div>
188
209
 
189
210
  <div class="form-row" style="margin:14px 0 4px 0;border-top:1px solid #e5e7eb;padding-top:10px">
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "node-red-contrib-modbus-modpackqt",
3
- "version": "3.3.0",
3
+ "version": "3.3.1",
4
4
  "description": "Modbus commissioning, testing & analysis tools for Node-RED. Embedded Modbus TCP/RTU master + slave server, FC1/FC2/FC3/FC4 reads, FC5/FC6/FC15/FC16 writes, built-in slave register store, and a passive traffic monitor for debugging. 100% free, MIT, no usage limits. By ModPackQT — open the matching web console at modpackqt.com for register decoding, simulation and AI assistance.",
5
5
  "keywords": [
6
6
  "node-red",