@node-red/nodes 2.2.0 → 3.0.0-beta.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.
Files changed (51) hide show
  1. package/core/common/05-junction.html +5 -0
  2. package/core/common/05-junction.js +12 -0
  3. package/core/common/20-inject.html +25 -13
  4. package/core/common/21-debug.html +60 -6
  5. package/core/common/21-debug.js +60 -29
  6. package/core/common/60-link.html +66 -29
  7. package/core/common/60-link.js +169 -20
  8. package/core/common/lib/debug/debug-utils.js +34 -1
  9. package/core/function/10-function.html +57 -21
  10. package/core/function/10-switch.html +3 -1
  11. package/core/function/10-switch.js +1 -0
  12. package/core/function/15-change.html +40 -12
  13. package/core/function/16-range.html +14 -5
  14. package/core/function/80-template.html +16 -12
  15. package/core/function/89-delay.html +46 -6
  16. package/core/function/89-trigger.html +12 -4
  17. package/core/function/rbe.html +7 -3
  18. package/core/network/05-tls.html +10 -4
  19. package/core/network/06-httpproxy.html +10 -1
  20. package/core/network/10-mqtt.html +73 -17
  21. package/core/network/10-mqtt.js +205 -95
  22. package/core/network/21-httpin.html +6 -2
  23. package/core/network/21-httprequest.html +217 -12
  24. package/core/network/21-httprequest.js +98 -17
  25. package/core/network/22-websocket.html +19 -5
  26. package/core/network/22-websocket.js +16 -13
  27. package/core/network/31-tcpin.html +47 -10
  28. package/core/network/31-tcpin.js +8 -3
  29. package/core/network/32-udp.html +14 -2
  30. package/core/parsers/70-CSV.html +4 -1
  31. package/core/parsers/70-JSON.html +3 -2
  32. package/core/parsers/70-XML.html +2 -1
  33. package/core/parsers/70-YAML.html +2 -1
  34. package/core/sequence/17-split.html +5 -1
  35. package/core/sequence/19-batch.html +28 -4
  36. package/core/storage/10-file.html +68 -8
  37. package/core/storage/10-file.js +46 -3
  38. package/core/storage/23-watch.html +2 -1
  39. package/core/storage/23-watch.js +21 -43
  40. package/locales/de/messages.json +1 -0
  41. package/locales/en-US/common/60-link.html +18 -3
  42. package/locales/en-US/messages.json +68 -17
  43. package/locales/en-US/network/21-httprequest.html +1 -1
  44. package/locales/en-US/storage/10-file.html +6 -2
  45. package/locales/ja/common/60-link.html +12 -0
  46. package/locales/ja/messages.json +65 -18
  47. package/locales/ko/messages.json +1 -0
  48. package/locales/ru/messages.json +1 -0
  49. package/locales/zh-CN/messages.json +1 -0
  50. package/locales/zh-TW/messages.json +1 -0
  51. package/package.json +12 -12
@@ -29,8 +29,8 @@
29
29
  <p>Create virtual wires between flows.</p>
30
30
  <h3>Details</h3>
31
31
  <p>This node can be configured to either send messages to all <code>link in</code>
32
- nodes it is connected to, or to send a response back to the <code>link call</code>
33
- node that triggered the flow.</p>
32
+ nodes it is connected to, or to send a response back to the <code>link call</code>
33
+ node that triggered the flow.</p>
34
34
  <p>When in 'send to all' mode, the wires between link nodes are only displayed when
35
35
  the node is selected. If there are any wires to other tabs, a virtual node
36
36
  is shown that can be clicked on to jump to the appropriate tab.</p>
@@ -39,12 +39,27 @@
39
39
 
40
40
  <script type="text/html" data-help-name="link call">
41
41
  <p>Calls a flow that starts with a <code>link in</code> node and passes on the response.</p>
42
+ <h3>Inputs</h3>
43
+ <dl class="message-properties">
44
+ <dt class="optional">target<span class="property-type">string</span></dt>
45
+ <dd>When the option <b>Link Type</b> is set to "Dynamic target", set <code>msg.target</code> to the name of the
46
+ <code>link in</code> node you wish to call.</dd>
47
+ </dl>
42
48
  <h3>Details</h3>
43
49
  <p>This node can be connected to a <code>link in</code> node that exists on any tab.
44
50
  The flow connected to that node must end with a <code>link out</code> node configured
45
51
  in 'return' mode.</p>
46
52
  <p>When this node receives a message, it is passed to the connected <code>link in</code> node.
47
- It then waits for a response which it then sends on.</o>
53
+ It then waits for a response which it then sends on.</p>
48
54
  <p>If no response is received within the configured timeout, default 30 seconds, the node
49
55
  will log an error that can be caught using the <code>catch</code> node.</p>
56
+ <p>When the option <b>Link Type</b> is set to "Dynamic target" <code>msg.target</code> can be used to call a
57
+ <code>link in</code> by name. The target <code>link in</code> node must be named.
58
+ <ul>
59
+ <li>If there are 2 <code>link in</code> nodes with the same name, an error will be raised</li>
60
+ <li>A <code>link call</code> cannot call a <code>link in</code> node inside a subflow</li>
61
+ </ul>
62
+ </p>
63
+ The flow connected to that node must end with a <code>link out</code> node configured
64
+ in 'return' mode.</p>
50
65
  </script>
@@ -85,7 +85,11 @@
85
85
  "errors": {
86
86
  "failed": "inject failed, see log for details",
87
87
  "toolong": "Interval too large",
88
- "invalid-expr": "Invalid JSONata expression: __error__"
88
+ "invalid-expr": "Invalid JSONata expression: __error__",
89
+ "invalid-jsonata": "__prop__: invalid property expression: __error__",
90
+ "invalid-prop": "__prop__: invalid property expression: __error__",
91
+ "invalid-json": "__prop__: invalid JSON data: __error__",
92
+ "invalid-repeat": "Invalid repeat value"
89
93
  }
90
94
  },
91
95
  "catch": {
@@ -125,6 +129,7 @@
125
129
  "msgprop": "message property",
126
130
  "msgobj": "complete msg object",
127
131
  "autostatus": "same as debug output",
132
+ "messageCount": "message count",
128
133
  "to": "To",
129
134
  "debtab": "debug tab",
130
135
  "tabcon": "debug tab and console",
@@ -170,6 +175,11 @@
170
175
  "outMode": "Mode",
171
176
  "sendToAll": "Send to all connected link nodes",
172
177
  "returnToCaller": "Return to calling link node",
178
+ "timeout": "timeout",
179
+ "linkCallType": "Link Type",
180
+ "staticLinkCall": "Fixed target",
181
+ "dynamicLinkCall": "Dynamic target (msg.target)",
182
+ "dynamicLinkLabel": "Dynamic",
173
183
  "error": {
174
184
  "missingReturn": "Missing return node information"
175
185
  }
@@ -196,7 +206,9 @@
196
206
  "alpnprotocol":"for use with ALPN"
197
207
  },
198
208
  "error": {
199
- "missing-file": "No certificate/key file provided"
209
+ "missing-file": "No certificate/key file provided",
210
+ "invalid-cert": "Certificate not specified",
211
+ "invalid-key": "Private key not specified"
200
212
  }
201
213
  },
202
214
  "exec": {
@@ -251,7 +263,9 @@
251
263
  "moduleNameError": "Invalid module variable name: __name__",
252
264
  "moduleNameReserved": "Reserved variable name: __name__",
253
265
  "inputListener":"Cannot add listener to 'input' event within Function",
254
- "non-message-returned":"Function tried to send a message of type __type__"
266
+ "non-message-returned":"Function tried to send a message of type __type__",
267
+ "invalid-js": "Error in JavaScript code",
268
+ "missing-module": "Module __module__ missing"
255
269
  }
256
270
  },
257
271
  "template": {
@@ -305,6 +319,9 @@
305
319
  "limit": "limit",
306
320
  "limitTopic": "limit topic",
307
321
  "random": "random",
322
+ "rate": "rate",
323
+ "random-first": "first random value",
324
+ "random-last": "last random value",
308
325
  "units" : {
309
326
  "second": {
310
327
  "plural" : "Seconds",
@@ -325,7 +342,12 @@
325
342
  }
326
343
  },
327
344
  "errors": {
328
- "too-many" : "too many pending messages in delay node"
345
+ "too-many" : "too many pending messages in delay node",
346
+ "invalid-timeout": "Invalid delay value",
347
+ "invalid-rate": "Invalid rate value",
348
+ "invalid-rate-unit": "Invalid rate unit value",
349
+ "invalid-random-first": "Invalid first random value",
350
+ "invalid-random-last": "Invalid last random value"
329
351
  }
330
352
  },
331
353
  "trigger": {
@@ -362,7 +384,9 @@
362
384
  "reset": "Reset the trigger if:",
363
385
  "resetMessage":"msg.reset is set",
364
386
  "resetPayload":"msg.payload equals",
365
- "resetprompt": "optional"
387
+ "resetprompt": "optional",
388
+ "duration": "duration",
389
+ "topic": "topic"
366
390
  }
367
391
  },
368
392
  "comment": {
@@ -420,7 +444,8 @@
420
444
  "action": "Action",
421
445
  "staticTopic": "Subscribe to single topic",
422
446
  "dynamicTopic": "Dynamic subscription",
423
- "auto-connect": "Connect automatically"
447
+ "auto-connect": "Connect automatically",
448
+ "auto-mode-depreciated": "This option is depreciated. Please use the new auto-detect mode."
424
449
  },
425
450
  "sections-label":{
426
451
  "birth-message": "Message sent on connection (birth message)",
@@ -451,6 +476,7 @@
451
476
  "string": "a String",
452
477
  "base64": "a Base64 encoded string",
453
478
  "auto": "auto-detect (string or buffer)",
479
+ "auto-detect": "auto-detect (parsed JSON object, string or buffer)",
454
480
  "json": "a parsed JSON object"
455
481
  },
456
482
  "true": "true",
@@ -465,7 +491,9 @@
465
491
  "invalid-json-parse": "Failed to parse JSON string",
466
492
  "invalid-action-action": "Invalid action specified",
467
493
  "invalid-action-alreadyconnected": "Disconnect from broker before connecting",
468
- "invalid-action-badsubscription": "msg.topic is missing or invalid"
494
+ "invalid-action-badsubscription": "msg.topic is missing or invalid",
495
+ "invalid-client-id": "Missing Client ID"
496
+
469
497
  }
470
498
  },
471
499
  "httpin": {
@@ -521,7 +549,8 @@
521
549
  "invalid-transport":"non-http transport requested",
522
550
  "timeout-isnan": "Timeout value is not a valid number, ignoring",
523
551
  "timeout-isnegative": "Timeout value is negative, ignoring",
524
- "invalid-payload": "Invalid payload"
552
+ "invalid-payload": "Invalid payload",
553
+ "invalid-url": "Invalid url"
525
554
  },
526
555
  "status": {
527
556
  "requesting": "requesting"
@@ -554,7 +583,9 @@
554
583
  "connect-error": "An error occurred on the ws connection: ",
555
584
  "send-error": "An error occurred while sending: ",
556
585
  "missing-conf": "Missing server configuration",
557
- "duplicate-path": "Cannot have two WebSocket listeners on the same path: __path__"
586
+ "duplicate-path": "Cannot have two WebSocket listeners on the same path: __path__",
587
+ "missing-server": "Missing server configuration",
588
+ "missing-client": "Missing client configuration"
558
589
  }
559
590
  },
560
591
  "watch": {
@@ -583,7 +614,8 @@
583
614
  "ms": "ms",
584
615
  "chars": "chars",
585
616
  "close": "Close",
586
- "optional": "(optional)"
617
+ "optional": "(optional)",
618
+ "reattach": "re-attach delimiter"
587
619
  },
588
620
  "type": {
589
621
  "listen": "Listen on",
@@ -624,7 +656,9 @@
624
656
  "no-host": "Host and/or port not set",
625
657
  "connect-timeout": "connect timeout",
626
658
  "connect-fail": "connect failed",
627
- "bad-string": "failed to convert to string"
659
+ "bad-string": "failed to convert to string",
660
+ "invalid-host": "Invalid host",
661
+ "invalid-port": "Invalid port"
628
662
  }
629
663
  },
630
664
  "udp": {
@@ -638,7 +672,8 @@
638
672
  "send": "Send a",
639
673
  "toport": "to port",
640
674
  "address": "Address",
641
- "decode-base64": "Decode Base64 encoded payload?"
675
+ "decode-base64": "Decode Base64 encoded payload?",
676
+ "port": "port"
642
677
  },
643
678
  "placeholder": {
644
679
  "interface": "(optional) local interface or address to bind to",
@@ -685,7 +720,8 @@
685
720
  "port-notset": "udp: port not set",
686
721
  "port-invalid": "udp: port number not valid",
687
722
  "alreadyused": "udp: port __port__ already in use",
688
- "ifnotfound": "udp: interface __iface__ not found"
723
+ "ifnotfound": "udp: interface __iface__ not found",
724
+ "invalid-group": "invalid multicast group"
689
725
  }
690
726
  },
691
727
  "switch": {
@@ -749,7 +785,9 @@
749
785
  "invalid-from": "Invalid 'from' property: __error__",
750
786
  "invalid-json": "Invalid 'to' JSON property",
751
787
  "invalid-expr": "Invalid JSONata expression: __error__",
752
- "no-override": "Cannot set property of non-object type: __property__"
788
+ "no-override": "Cannot set property of non-object type: __property__",
789
+ "invalid-prop": "Invalid property expression: __property__",
790
+ "invalid-json-data": "Invalid JSON data: __error__"
753
791
  }
754
792
  },
755
793
  "range": {
@@ -760,7 +798,11 @@
760
798
  "resultrange": "to the target range",
761
799
  "from": "from",
762
800
  "to": "to",
763
- "roundresult": "Round result to the nearest integer?"
801
+ "roundresult": "Round result to the nearest integer?",
802
+ "minin": "input from",
803
+ "maxin": "input to",
804
+ "minout": "target from",
805
+ "maxout": "target to"
764
806
  },
765
807
  "placeholder": {
766
808
  "min": "e.g. 0",
@@ -985,6 +1027,7 @@
985
1027
  "complete": "After a message with the <code>msg.complete</code> property set",
986
1028
  "tip": "This mode assumes this node is either paired with a <i>split</i> node or the received messages will have a properly configured <code>msg.parts</code> property.",
987
1029
  "too-many": "too many pending messages in join node",
1030
+ "message-prop": "message property",
988
1031
  "merge": {
989
1032
  "topics-label": "Merged Topics",
990
1033
  "topics": "topics",
@@ -1042,7 +1085,12 @@
1042
1085
  },
1043
1086
  "too-many" : "too many pending messages in batch node",
1044
1087
  "unexpected" : "unexpected mode",
1045
- "no-parts" : "no parts property in message"
1088
+ "no-parts" : "no parts property in message",
1089
+ "error": {
1090
+ "invalid-count": "Invalid count",
1091
+ "invalid-overlap": "Invalid overlap",
1092
+ "invalid-interval": "Invalid interval"
1093
+ }
1046
1094
  },
1047
1095
  "rbe": {
1048
1096
  "rbe": "filter",
@@ -1051,7 +1099,10 @@
1051
1099
  "init": "Send initial value",
1052
1100
  "start": "Start value",
1053
1101
  "name": "Name",
1054
- "septopics": "Apply mode separately for each "
1102
+ "septopics": "Apply mode separately for each ",
1103
+ "gap": "value change",
1104
+ "property": "property",
1105
+ "topic": "topic"
1055
1106
  },
1056
1107
  "placeholder":{
1057
1108
  "bandgap": "e.g. 10 or 5%",
@@ -25,7 +25,7 @@
25
25
  <dd>If not configured in the node, this optional property sets the HTTP method of the request.
26
26
  Must be one of <code>GET</code>, <code>PUT</code>, <code>POST</code>, <code>PATCH</code> or <code>DELETE</code>.</dd>
27
27
  <dt class="optional">headers <span class="property-type">object</span></dt>
28
- <dd>Sets the HTTP headers of the request.</dd>
28
+ <dd>Sets the HTTP headers of the request. NOTE: Any headers set in the node configuration will overwrite any matching headers in <code>msg.headers</code> </dd>
29
29
  <dt class="optional">cookies <span class="property-type">object</span></dt>
30
30
  <dd>If set, can be used to send cookies with the request.</dd>
31
31
  <dt class="optional">payload</dt>
@@ -20,7 +20,9 @@
20
20
  <h3>Inputs</h3>
21
21
  <dl class="message-properties">
22
22
  <dt class="optional">filename <span class="property-type">string</span></dt>
23
- <dd>If not configured in the node, this optional property sets the name of the file to be updated.</dd>
23
+ <dd>The name of the file to be updated can be provided in the node configuration, or as a message property.
24
+ By default it will use <code>msg.filename</code> but this can be customised in the node.
25
+ </dd>
24
26
  <dt class="optional">encoding <span class="property-type">string</span></dt>
25
27
  <dd>If encoding is configured to be set by msg, then this optional property can set the encoding.</dt>
26
28
  </dl>
@@ -43,7 +45,9 @@
43
45
  <h3>Inputs</h3>
44
46
  <dl class="message-properties">
45
47
  <dt class="optional">filename <span class="property-type">string</span></dt>
46
- <dd>if not set in the node configuration, this property sets the filename to read.</dd>
48
+ <dd>The name of the file to be read can be provided in the node configuration, or as a message property.
49
+ By default it will use <code>msg.filename</code> but this can be customised in the node.
50
+ </dd>
47
51
  </dl>
48
52
  <h3>Outputs</h3>
49
53
  <dl class="message-properties">
@@ -32,9 +32,21 @@
32
32
 
33
33
  <script type="text/html" data-help-name="link call">
34
34
  <p><code>link in</code> で始まり、応答を返すフローを呼び出します。</p>
35
+ <h3>入力</h3>
36
+ <dl class="message-properties">
37
+ <dt class="optional">target<span class="property-type">文字列</span></dt>
38
+ <dd><b>リンクの種類</b>で"対象を動的に指定"を選択した場合、<code>msg.target</code>に呼び出したい<code>link in</code>ノードの名前を指定します。</dd>
39
+ </dl>
35
40
  <h3>詳細</h3>
36
41
  <p>本ノードは、任意のタブ内に存在する <code>link in</code> ノードに接続できます。 接続先のフローは、`返却`モードが設定された <code>link out</code> ノードで終了する必要があります。</p>
37
42
  <p>本ノードはメッセージを受信すると、メッセージを接続した <code>link in</code> ノードへ渡します。
38
43
  その後、応答を待った後にメッセージを送信します。</o>
39
44
  <p>もし、設定したタイムアウト(デフォルト30秒)以内に応答がない場合は、<code>catch</code> ノードを用いてエラーをログに記録することもできます。</p>
45
+ <p><b>リンクの種類</b>で"対象を動的に指定"を選択した場合、<code>link in</code>ノードの名前を<code>msg.target</code>に指定して呼び出すことができます。対象となる<code>link in</code>ノードには、名前を付ける必要があります。
46
+ <ul>
47
+ <li>もし、同じ名前を付けた<code>link in</code>ノードが2つある場合、エラーが発生します。</li>
48
+ <li><code>link call</code>は、サブフローの中の<code>link in</code>ノードを呼び出すことはできません。</li>
49
+ </ul>
50
+ </p>
51
+ 本ノードから呼び出すフローは、終端の<code>link out</code>ノードに'返却'モードを設定する必要があります。</p>
40
52
  </script>
@@ -85,7 +85,11 @@
85
85
  "errors": {
86
86
  "failed": "inject処理が失敗しました。詳細はログを確認してください。",
87
87
  "toolong": "時間間隔が大き過ぎます",
88
- "invalid-expr": "JSONata式が不正: __error__"
88
+ "invalid-expr": "JSONata式が不正: __error__",
89
+ "invalid-jsonata": "__prop__: プロパティ式が不正: __error__",
90
+ "invalid-prop": "__prop__: プロパティ式が不正: __error__",
91
+ "invalid-json": "__prop__: JSONデータが不正: __error__",
92
+ "invalid-repeat": "繰り返し数が不正"
89
93
  }
90
94
  },
91
95
  "catch": {
@@ -170,6 +174,11 @@
170
174
  "outMode": "モード",
171
175
  "sendToAll": "接続された全てのlinkノードへ送信",
172
176
  "returnToCaller": "link callノードへ返却",
177
+ "timeout": "タイムアウト",
178
+ "linkCallType": "リンクの種類",
179
+ "staticLinkCall": "対象を固定で指定",
180
+ "dynamicLinkCall": "対象を動的に指定 (msg.target)",
181
+ "dynamicLinkLabel": "動的",
173
182
  "error": {
174
183
  "missingReturn": "返却するノードの情報が存在しません"
175
184
  }
@@ -196,7 +205,9 @@
196
205
  "alpnprotocol": "ALPNで使用"
197
206
  },
198
207
  "error": {
199
- "missing-file": "証明書と秘密鍵のファイルが設定されていません"
208
+ "missing-file": "証明書と秘密鍵のファイルが設定されていません",
209
+ "invalid-cert": "証明書が指定されていません",
210
+ "invalid-key": "秘密鍵が指定されていません"
200
211
  }
201
212
  },
202
213
  "exec": {
@@ -251,7 +262,9 @@
251
262
  "moduleNameError": "モジュール変数名が不正です: __name__",
252
263
  "moduleNameReserved": "予約された変数名です: __name__",
253
264
  "inputListener": "コード内で'input'イベントのリスナを設定できません",
254
- "non-message-returned": "Functionノードが __type__ 型のメッセージ送信を試みました"
265
+ "non-message-returned": "Functionノードが __type__ 型のメッセージ送信を試みました",
266
+ "invalid-js": "JavaScriptコードのエラー",
267
+ "missing-module": "モジュール __module__ が存在しません"
255
268
  }
256
269
  },
257
270
  "template": {
@@ -291,8 +304,8 @@
291
304
  "hour": "時間",
292
305
  "days": "日",
293
306
  "day": "日",
294
- "between": "頻度",
295
- "and": "回/",
307
+ "between": "範囲",
308
+ "and": "",
296
309
  "rate": "流量",
297
310
  "msgper": "メッセージ/",
298
311
  "queuemsg": "中間メッセージをキューに追加",
@@ -305,6 +318,9 @@
305
318
  "limit": "limit",
306
319
  "limitTopic": "limit topic",
307
320
  "random": "random",
321
+ "rate": "流量",
322
+ "random-first": "ランダム最小値",
323
+ "random-last": "ランダム最大値",
308
324
  "units": {
309
325
  "second": {
310
326
  "plural": "秒",
@@ -325,7 +341,12 @@
325
341
  }
326
342
  },
327
343
  "errors": {
328
- "too-many": "delayノード内で保持しているメッセージが多すぎます"
344
+ "too-many": "delayノード内で保持しているメッセージが多すぎます",
345
+ "invalid-timeout": "遅延時間が不正",
346
+ "invalid-rate": "流量値が不正",
347
+ "invalid-rate-unit": "流量単位時間が不正",
348
+ "invalid-random-first": "ランダム最小値が不正",
349
+ "invalid-random-last": "ランダム最大値が不正"
329
350
  }
330
351
  },
331
352
  "trigger": {
@@ -362,7 +383,9 @@
362
383
  "reset": "初期化条件:",
363
384
  "resetMessage": "msg.resetを設定",
364
385
  "resetPayload": "msg.payloadが次の値",
365
- "resetprompt": "任意"
386
+ "resetprompt": "任意",
387
+ "duration": "時間間隔",
388
+ "topic": "トピック"
366
389
  }
367
390
  },
368
391
  "comment": {
@@ -451,6 +474,7 @@
451
474
  "string": "文字列",
452
475
  "base64": "Base64文字列",
453
476
  "auto": "自動判定(文字列もしくはバイナリバッファ)",
477
+ "auto-detect": "自動判定(JSONオブジェクト、文字列もしくはバイナリバッファ)",
454
478
  "json": "JSONオブジェクト"
455
479
  },
456
480
  "true": "する",
@@ -465,7 +489,8 @@
465
489
  "invalid-json-parse": "JSON文字列のパースに失敗しました",
466
490
  "invalid-action-action": "指定された動作が不正です",
467
491
  "invalid-action-alreadyconnected": "接続する前にブローカから切断してください",
468
- "invalid-action-badsubscription": "msg.topicが存在しないか不正です"
492
+ "invalid-action-badsubscription": "msg.topicが存在しないか不正です",
493
+ "invalid-client-id": "クライアントIDが未指定"
469
494
  }
470
495
  },
471
496
  "httpin": {
@@ -521,7 +546,8 @@
521
546
  "invalid-transport": "httpでないトランスポートが要求されました",
522
547
  "timeout-isnan": "タイムアウト値が数値ではないため無視します",
523
548
  "timeout-isnegative": "タイムアウト値が負数のため無視します",
524
- "invalid-payload": "不正なペイロード"
549
+ "invalid-payload": "不正なペイロード",
550
+ "invalid-url": "URLが不正"
525
551
  },
526
552
  "status": {
527
553
  "requesting": "要求中"
@@ -554,7 +580,9 @@
554
580
  "connect-error": "ws接続でエラーが発生しました: ",
555
581
  "send-error": "送信中にエラーが発生しました: ",
556
582
  "missing-conf": "サーバ設定が不足しています",
557
- "duplicate-path": "同じパスに対して2つのWebSocketリスナは指定できません: __path__"
583
+ "duplicate-path": "同じパスに対して2つのWebSocketリスナは指定できません: __path__",
584
+ "missing-server": "サーバが設定されていません",
585
+ "missing-client": "クライアントが設定されていません"
558
586
  }
559
587
  },
560
588
  "watch": {
@@ -623,7 +651,9 @@
623
651
  "no-host": "ホスト名またはポートが設定されていません",
624
652
  "connect-timeout": "接続がタイムアウトしました",
625
653
  "connect-fail": "接続に失敗しました",
626
- "bad-string": "文字列への変換に失敗しました"
654
+ "bad-string": "文字列への変換に失敗しました",
655
+ "invalid-host": "ホスト名が不正",
656
+ "invalid-port": "ポートが不正"
627
657
  }
628
658
  },
629
659
  "udp": {
@@ -637,7 +667,8 @@
637
667
  "send": "送信",
638
668
  "toport": "ポート",
639
669
  "address": "アドレス",
640
- "decode-base64": "Base64形式のペイロードを復号"
670
+ "decode-base64": "Base64形式のペイロードを復号",
671
+ "port": "ポート"
641
672
  },
642
673
  "placeholder": {
643
674
  "interface": "(任意) 使用するローカルインターフェイスもしくはアドレス",
@@ -684,7 +715,8 @@
684
715
  "port-notset": "udp: ポートが設定されていません",
685
716
  "port-invalid": "udp: ポート番号が不正です",
686
717
  "alreadyused": "udp: 既に__port__番ポートが使用されています",
687
- "ifnotfound": "udp: インターフェイス __iface__ がありません"
718
+ "ifnotfound": "udp: インターフェイス __iface__ がありません",
719
+ "invalid-group": "マルチキャストグループが不正"
688
720
  }
689
721
  },
690
722
  "switch": {
@@ -748,7 +780,9 @@
748
780
  "invalid-from": "操作対象のプロパティが不正: __error__",
749
781
  "invalid-json": "対象の値のJSONプロパティが不正",
750
782
  "invalid-expr": "JSONata式が不正: __error__",
751
- "no-override": "オブジェクト型でないプロパティを設定できません: __property__"
783
+ "no-override": "オブジェクト型でないプロパティを設定できません: __property__",
784
+ "invalid-prop": "プロパティ式が不正: __property__",
785
+ "invalid-json-data": "JSONデータが不正: __error__"
752
786
  }
753
787
  },
754
788
  "range": {
@@ -759,7 +793,11 @@
759
793
  "resultrange": "出力値の範囲",
760
794
  "from": "最小値",
761
795
  "to": "最大値",
762
- "roundresult": "小数値を四捨五入し整数値へ変換"
796
+ "roundresult": "小数値を四捨五入し整数値へ変換",
797
+ "minin": "入力最小値",
798
+ "maxin": "入力最大値",
799
+ "minout": "出力最小値",
800
+ "maxout": "出力最大値"
763
801
  },
764
802
  "placeholder": {
765
803
  "min": "例) 0",
@@ -984,7 +1022,8 @@
984
1022
  "complete": "<code>msg.complete</code> プロパティが設定されたメッセージ受信後",
985
1023
  "tip": "このモードでは、本ノードが <i>split</i> ノードと組となるか、 <code>msg.parts</code> プロパティが設定されたメッセージを受け取ることが前提となります。",
986
1024
  "too-many": "joinノード内部で保持しているメッセージが多すぎます",
987
- "merge": {
1025
+ "message-prop": "メッセージプロパティ",
1026
+ "merge": {
988
1027
  "topics-label": "対象トピック",
989
1028
  "topics": "トピック",
990
1029
  "topic": "トピック",
@@ -1041,7 +1080,12 @@
1041
1080
  },
1042
1081
  "too-many": "batchノード内で保持しているメッセージが多すぎます",
1043
1082
  "unexpected": "想定外のモード",
1044
- "no-parts": "メッセージにpartsプロパティがありません"
1083
+ "no-parts": "メッセージにpartsプロパティがありません",
1084
+ "error": {
1085
+ "invalid-count": "メッセージ数が不正",
1086
+ "invalid-overlap": "オーバラップが不正",
1087
+ "invalid-interval": "時間間隔が不正"
1088
+ }
1045
1089
  },
1046
1090
  "rbe": {
1047
1091
  "rbe": "filter",
@@ -1050,7 +1094,10 @@
1050
1094
  "init": "初期値を送付",
1051
1095
  "start": "初期値",
1052
1096
  "name": "名前",
1053
- "septopics": "個別に動作を適用"
1097
+ "septopics": "個別に動作を適用",
1098
+ "gap": "変化量",
1099
+ "property": "プロパティ",
1100
+ "topic": "トピック"
1054
1101
  },
1055
1102
  "placeholder": {
1056
1103
  "bandgap": "例:10、5%",
@@ -362,6 +362,7 @@
362
362
  "string": "문자열",
363
363
  "base64": "Base64문자열",
364
364
  "auto": "자동판정(문자열혹은 바이너리버퍼)",
365
+ "auto-detect": "자동판정(JSON오브젝트, 문자열혹은 바이너리버퍼)",
365
366
  "json": "JSON오브젝트"
366
367
  },
367
368
  "true": "한다",
@@ -385,6 +385,7 @@
385
385
  "string": "строка",
386
386
  "base64": "строка в кодировке Base64",
387
387
  "auto": "автоопределение (строка или буфер)",
388
+ "auto-detect": "автоопределение (разобрать объект JSON, строка или буфер)",
388
389
  "json": "объект JSON"
389
390
  },
390
391
  "true": "да",
@@ -382,6 +382,7 @@
382
382
  "string": "字符串",
383
383
  "base64": "Base64编码字符串",
384
384
  "auto": "自动检测 (字符串或buffer)",
385
+ "auto-detect": "自动检测 (已解析的JSON对象、字符串或buffer)",
385
386
  "json": "解析的JSON对象"
386
387
  },
387
388
  "true": "是",
@@ -386,6 +386,7 @@
386
386
  "string": "字串",
387
387
  "base64": "Base64編碼字串",
388
388
  "auto": "自動檢測 (字符串或buffer)",
389
+ "auto-detect": "自动检测 (已解析的JSON对象、字符串或buffer)",
389
390
  "json": "解析的JSON對象"
390
391
  },
391
392
  "true": "是",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@node-red/nodes",
3
- "version": "2.2.0",
3
+ "version": "3.0.0-beta.1",
4
4
  "license": "Apache-2.0",
5
5
  "repository": {
6
6
  "type": "git",
@@ -15,32 +15,32 @@
15
15
  }
16
16
  ],
17
17
  "dependencies": {
18
- "acorn": "8.7.0",
18
+ "acorn": "8.7.1",
19
19
  "acorn-walk": "8.2.0",
20
- "ajv": "8.9.0",
21
- "body-parser": "1.19.1",
20
+ "ajv": "8.11.0",
21
+ "body-parser": "1.20.0",
22
22
  "cheerio": "1.0.0-rc.10",
23
23
  "content-type": "1.0.4",
24
24
  "cookie-parser": "1.4.6",
25
- "cookie": "0.4.1",
25
+ "cookie": "0.5.0",
26
26
  "cors": "2.8.5",
27
27
  "cronosjs": "1.7.1",
28
28
  "denque": "2.0.1",
29
29
  "form-data": "4.0.0",
30
- "fs-extra": "10.0.0",
31
- "fs.notify": "0.0.4",
30
+ "fs-extra": "10.1.0",
32
31
  "got": "11.8.3",
33
32
  "hash-sum": "2.0.0",
34
- "hpagent": "0.1.2",
35
- "https-proxy-agent": "5.0.0",
33
+ "hpagent": "1.0.0",
34
+ "https-proxy-agent": "5.0.1",
36
35
  "is-utf8": "0.2.1",
37
- "js-yaml": "3.14.1",
36
+ "js-yaml": "4.1.0",
38
37
  "media-typer": "1.1.0",
39
- "mqtt": "4.3.4",
38
+ "mqtt": "4.3.7",
40
39
  "multer": "1.4.4",
41
40
  "mustache": "4.2.0",
41
+ "node-watch": "0.7.3",
42
42
  "on-headers": "1.0.2",
43
- "raw-body": "2.4.2",
43
+ "raw-body": "2.5.1",
44
44
  "tough-cookie": "4.0.0",
45
45
  "uuid": "8.3.2",
46
46
  "ws": "7.5.6",