node-red-contrib-join-wait 0.6.0 → 0.6.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.
@@ -11,7 +11,15 @@
11
11
  "type": "inject",
12
12
  "z": "qs-tab",
13
13
  "name": "path_1",
14
- "props": [{ "p": "topic", "v": "path_1", "vt": "str" }, { "p": "payload", "v": "hello-1", "vt": "str" }],
14
+ "props": [
15
+ { "p": "topic", "vt": "str" },
16
+ { "p": "payload", "v": "hello-1", "vt": "str" }
17
+ ],
18
+ "repeat": "",
19
+ "crontab": "",
20
+ "once": false,
21
+ "onceDelay": "",
22
+ "topic": "path_1",
15
23
  "x": 130,
16
24
  "y": 100,
17
25
  "wires": [["qs-jw"]]
@@ -21,7 +29,15 @@
21
29
  "type": "inject",
22
30
  "z": "qs-tab",
23
31
  "name": "path_2",
24
- "props": [{ "p": "topic", "v": "path_2", "vt": "str" }, { "p": "payload", "v": "hello-2", "vt": "str" }],
32
+ "props": [
33
+ { "p": "topic", "vt": "str" },
34
+ { "p": "payload", "v": "hello-2", "vt": "str" }
35
+ ],
36
+ "repeat": "",
37
+ "crontab": "",
38
+ "once": false,
39
+ "onceDelay": "",
40
+ "topic": "path_2",
25
41
  "x": 130,
26
42
  "y": 160,
27
43
  "wires": [["qs-jw"]]
@@ -12,6 +12,11 @@
12
12
  "z": "corr-tab",
13
13
  "name": "split flow",
14
14
  "props": [{ "p": "payload", "v": "{}", "vt": "json" }],
15
+ "repeat": "",
16
+ "crontab": "",
17
+ "once": false,
18
+ "onceDelay": "",
19
+ "topic": "",
15
20
  "x": 120,
16
21
  "y": 130,
17
22
  "wires": [["corr-set1", "corr-delay", "corr-set3"]]
@@ -22,6 +27,11 @@
22
27
  "z": "corr-tab",
23
28
  "name": "topic = path_1",
24
29
  "rules": [{ "t": "set", "p": "topic", "pt": "msg", "to": "path_1", "tot": "str" }],
30
+ "action": "",
31
+ "property": "",
32
+ "from": "",
33
+ "to": "",
34
+ "reg": false,
25
35
  "x": 320,
26
36
  "y": 80,
27
37
  "wires": [["corr-jw"]]
@@ -34,6 +44,15 @@
34
44
  "pauseType": "delay",
35
45
  "timeout": "1",
36
46
  "timeoutUnits": "seconds",
47
+ "rate": "1",
48
+ "nbRateUnits": "1",
49
+ "rateUnits": "second",
50
+ "randomFirst": "1",
51
+ "randomLast": "5",
52
+ "randomUnits": "seconds",
53
+ "drop": false,
54
+ "allowrate": false,
55
+ "outputs": 1,
37
56
  "x": 320,
38
57
  "y": 130,
39
58
  "wires": [["corr-set2"]]
@@ -44,6 +63,11 @@
44
63
  "z": "corr-tab",
45
64
  "name": "topic = path_2",
46
65
  "rules": [{ "t": "set", "p": "topic", "pt": "msg", "to": "path_2", "tot": "str" }],
66
+ "action": "",
67
+ "property": "",
68
+ "from": "",
69
+ "to": "",
70
+ "reg": false,
47
71
  "x": 480,
48
72
  "y": 130,
49
73
  "wires": [["corr-jw"]]
@@ -54,6 +78,11 @@
54
78
  "z": "corr-tab",
55
79
  "name": "topic = path_3",
56
80
  "rules": [{ "t": "set", "p": "topic", "pt": "msg", "to": "path_3", "tot": "str" }],
81
+ "action": "",
82
+ "property": "",
83
+ "from": "",
84
+ "to": "",
85
+ "reg": false,
57
86
  "x": 320,
58
87
  "y": 180,
59
88
  "wires": [["corr-jw"]]
@@ -11,7 +11,12 @@
11
11
  "type": "inject",
12
12
  "z": "rst-tab",
13
13
  "name": "path_1",
14
- "props": [{ "p": "topic", "v": "path_1", "vt": "str" }],
14
+ "props": [{ "p": "topic", "vt": "str" }],
15
+ "repeat": "",
16
+ "crontab": "",
17
+ "once": false,
18
+ "onceDelay": "",
19
+ "topic": "path_1",
15
20
  "x": 130,
16
21
  "y": 80,
17
22
  "wires": [["rst-jw"]]
@@ -21,7 +26,12 @@
21
26
  "type": "inject",
22
27
  "z": "rst-tab",
23
28
  "name": "path_2",
24
- "props": [{ "p": "topic", "v": "path_2", "vt": "str" }],
29
+ "props": [{ "p": "topic", "vt": "str" }],
30
+ "repeat": "",
31
+ "crontab": "",
32
+ "once": false,
33
+ "onceDelay": "",
34
+ "topic": "path_2",
25
35
  "x": 130,
26
36
  "y": 130,
27
37
  "wires": [["rst-jw"]]
@@ -31,7 +41,12 @@
31
41
  "type": "inject",
32
42
  "z": "rst-tab",
33
43
  "name": "reset",
34
- "props": [{ "p": "topic", "v": "abort", "vt": "str" }],
44
+ "props": [{ "p": "topic", "vt": "str" }],
45
+ "repeat": "",
46
+ "crontab": "",
47
+ "once": false,
48
+ "onceDelay": "",
49
+ "topic": "abort",
35
50
  "x": 130,
36
51
  "y": 200,
37
52
  "wires": [["rst-jw"]]
@@ -12,9 +12,14 @@
12
12
  "z": "rx-tab",
13
13
  "name": "sensor_a",
14
14
  "props": [
15
- { "p": "topic", "v": "sensor_a", "vt": "str" },
15
+ { "p": "topic", "vt": "str" },
16
16
  { "p": "payload", "v": "42", "vt": "num" }
17
17
  ],
18
+ "repeat": "",
19
+ "crontab": "",
20
+ "once": false,
21
+ "onceDelay": "",
22
+ "topic": "sensor_a",
18
23
  "x": 130,
19
24
  "y": 80,
20
25
  "wires": [["rx-jw"]]
@@ -25,9 +30,14 @@
25
30
  "z": "rx-tab",
26
31
  "name": "heartbeat",
27
32
  "props": [
28
- { "p": "topic", "v": "heartbeat", "vt": "str" },
33
+ { "p": "topic", "vt": "str" },
29
34
  { "p": "payload", "v": "ok", "vt": "str" }
30
35
  ],
36
+ "repeat": "",
37
+ "crontab": "",
38
+ "once": false,
39
+ "onceDelay": "",
40
+ "topic": "heartbeat",
31
41
  "x": 130,
32
42
  "y": 140,
33
43
  "wires": [["rx-jw"]]
@@ -11,7 +11,12 @@
11
11
  "type": "inject",
12
12
  "z": "eo-tab",
13
13
  "name": "start",
14
- "props": [{ "p": "topic", "v": "start", "vt": "str" }],
14
+ "props": [{ "p": "topic", "vt": "str" }],
15
+ "repeat": "",
16
+ "crontab": "",
17
+ "once": false,
18
+ "onceDelay": "",
19
+ "topic": "start",
15
20
  "x": 130,
16
21
  "y": 80,
17
22
  "wires": [["eo-jw"]]
@@ -21,7 +26,12 @@
21
26
  "type": "inject",
22
27
  "z": "eo-tab",
23
28
  "name": "work",
24
- "props": [{ "p": "topic", "v": "work", "vt": "str" }],
29
+ "props": [{ "p": "topic", "vt": "str" }],
30
+ "repeat": "",
31
+ "crontab": "",
32
+ "once": false,
33
+ "onceDelay": "",
34
+ "topic": "work",
25
35
  "x": 130,
26
36
  "y": 130,
27
37
  "wires": [["eo-jw"]]
@@ -31,7 +41,12 @@
31
41
  "type": "inject",
32
42
  "z": "eo-tab",
33
43
  "name": "end",
34
- "props": [{ "p": "topic", "v": "end", "vt": "str" }],
44
+ "props": [{ "p": "topic", "vt": "str" }],
45
+ "repeat": "",
46
+ "crontab": "",
47
+ "once": false,
48
+ "onceDelay": "",
49
+ "topic": "end",
35
50
  "x": 130,
36
51
  "y": 180,
37
52
  "wires": [["eo-jw"]]
package/join-wait.html CHANGED
@@ -352,10 +352,19 @@
352
352
  }
353
353
 
354
354
  function openExamplesDialog() {
355
- // Open the import dialog; the user picks Examples join-wait.
356
- // RED.actions exposes core actions across recent Node-RED versions.
357
- if (RED.actions && typeof RED.actions.invoke === 'function') {
358
- RED.actions.invoke('core:show-import-dialog');
355
+ // The edit tray is on top of the editor, so the import tray
356
+ // can't surface beneath it. Close this tray first (which cancels
357
+ // the in-flight edit), then invoke the core import dialog so the
358
+ // user can pick Examples → join-wait.
359
+ var invoke = function () {
360
+ if (RED.actions && typeof RED.actions.invoke === 'function') {
361
+ RED.actions.invoke('core:show-import-dialog');
362
+ }
363
+ };
364
+ if (RED.tray && typeof RED.tray.close === 'function') {
365
+ RED.tray.close(invoke);
366
+ } else {
367
+ invoke();
359
368
  }
360
369
  }
361
370
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "node-red-contrib-join-wait",
3
- "version": "0.6.0",
3
+ "version": "0.6.1",
4
4
  "description": "Node-RED node that joins related messages across multiple paths within a time window — with exact-order matching, regex paths, correlation grouping, reset paths, and queue persistence. Coordinate parallel flows, synchronize events, and debounce sensors.",
5
5
  "author": "Daniel Caspi <dan@element26.net>",
6
6
  "license": "MIT",