@node-red/editor-client 2.1.4 → 2.1.5
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/locales/ja/editor.json +4 -1
- package/package.json +1 -1
- package/public/red/about +34 -0
- package/public/red/red.js +47 -36
- package/public/red/red.min.js +1 -1
- package/public/red/style.min.css +1 -1
- package/public/red/tours/welcome.js +2 -2
- package/public/vendor/vendor.js +3 -3
package/locales/ja/editor.json
CHANGED
|
@@ -59,6 +59,8 @@
|
|
|
59
59
|
"hideOtherFlows": "他のフローを非表示",
|
|
60
60
|
"showAllFlows": "全てのフローを表示",
|
|
61
61
|
"hideAllFlows": "全てのフローを非表示",
|
|
62
|
+
"hiddenFlows": "__count__ 個の非表示のフロー一覧",
|
|
63
|
+
"hiddenFlows_plural": "__count__ 個の非表示のフロー一覧",
|
|
62
64
|
"showLastHiddenFlow": "最後に非表示にしたフローを表示",
|
|
63
65
|
"listFlows": "フロー一覧",
|
|
64
66
|
"listSubflows": "サブフロー一覧",
|
|
@@ -669,7 +671,8 @@
|
|
|
669
671
|
"unusedConfigNodes": "未使用の設定ノード",
|
|
670
672
|
"invalidNodes": "不正なノード",
|
|
671
673
|
"uknownNodes": "未知のノード",
|
|
672
|
-
"unusedSubflows": "未使用のサブフロー"
|
|
674
|
+
"unusedSubflows": "未使用のサブフロー",
|
|
675
|
+
"hiddenFlows": "非表示のフロー"
|
|
673
676
|
}
|
|
674
677
|
},
|
|
675
678
|
"help": {
|
package/package.json
CHANGED
package/public/red/about
CHANGED
|
@@ -1,3 +1,37 @@
|
|
|
1
|
+
#### 2.1.5: Maintenance Release
|
|
2
|
+
|
|
3
|
+
Runtime
|
|
4
|
+
|
|
5
|
+
- Handle reporting error location when stack is truncated (#3346) @knolleary
|
|
6
|
+
- Initialize passport when only adminAuth.tokens is set (#3343) @knolleary
|
|
7
|
+
- Add log logging (#3342) @knolleary
|
|
8
|
+
|
|
9
|
+
Editor
|
|
10
|
+
|
|
11
|
+
- Fix copy buttons on the debug window (another method) (#3331) @kazuhitoyokoi
|
|
12
|
+
- Add Japanese translations for hidden flow (#3302) @kazuhitoyokoi
|
|
13
|
+
- Improve jsonata legacy mode detection regex (#3345) @knolleary
|
|
14
|
+
- Fix generating flow name with incrementing number (#3347) @knolleary
|
|
15
|
+
- resume focus after import/export dialog close (#3337) @HiroyasuNishiyama
|
|
16
|
+
- Fix findPreviousVisibleTab action (#3321) @knolleary
|
|
17
|
+
- Fix storing hidden tab state when not hidden via action (#3312) @knolleary
|
|
18
|
+
- Avoid adding empty env properties to tabs/groups (#3311) @knolleary
|
|
19
|
+
- Fix hide icon in tour guide (#3301) @kazuhitoyokoi
|
|
20
|
+
|
|
21
|
+
Nodes
|
|
22
|
+
|
|
23
|
+
- File: Update file node examples according to node name change (#3335) @HiroyasuNishiyama
|
|
24
|
+
- Filter (RBE): Fix for filter node narrrowbandEq mode start condition failure (#3339) @dceejay
|
|
25
|
+
- Function: Prevent function scrollbar from obscuring expand button (#3348) @knolleary
|
|
26
|
+
- Function: load extralibs when expanding monaco. fixes #3319 (#3334) @Steve-Mcl
|
|
27
|
+
- Function: Update Function to use correct api to access env vars (#3310) @knolleary
|
|
28
|
+
- HTTP Request: Fix basic auth with empty username or password (#3325) @hardillb
|
|
29
|
+
- Inject: Fix incorrect clearing of blank payload property in Inject node (#3322) @knolleary
|
|
30
|
+
- Link Call: add link call example (#3336) @HiroyasuNishiyama
|
|
31
|
+
- WebSocket: Only setup ws client heartbeat once it is connected (#3344) @knolleary
|
|
32
|
+
- Update Japanese translations in node help (#3332) @kazuhitoyokoi
|
|
33
|
+
|
|
34
|
+
|
|
1
35
|
#### 2.1.4: Maintenance Release
|
|
2
36
|
|
|
3
37
|
Runtime
|
package/public/red/red.js
CHANGED
|
@@ -12557,7 +12557,7 @@ RED.tabs = (function() {
|
|
|
12557
12557
|
|
|
12558
12558
|
function findPreviousVisibleTab(li) {
|
|
12559
12559
|
if (!li) {
|
|
12560
|
-
li = ul.find("li.active")
|
|
12560
|
+
li = ul.find("li.active");
|
|
12561
12561
|
}
|
|
12562
12562
|
var previous = li.prev();
|
|
12563
12563
|
while(previous.length > 0 && previous.hasClass("hide-tab")) {
|
|
@@ -12567,9 +12567,9 @@ RED.tabs = (function() {
|
|
|
12567
12567
|
}
|
|
12568
12568
|
function findNextVisibleTab(li) {
|
|
12569
12569
|
if (!li) {
|
|
12570
|
-
li = ul.find("li.active")
|
|
12570
|
+
li = ul.find("li.active");
|
|
12571
12571
|
}
|
|
12572
|
-
var next =
|
|
12572
|
+
var next = li.next();
|
|
12573
12573
|
while(next.length > 0 && next.hasClass("hide-tab")) {
|
|
12574
12574
|
next = next.next();
|
|
12575
12575
|
}
|
|
@@ -18229,7 +18229,7 @@ RED.workspaces = (function() {
|
|
|
18229
18229
|
var tabId = RED.nodes.id();
|
|
18230
18230
|
do {
|
|
18231
18231
|
workspaceIndex += 1;
|
|
18232
|
-
} while ($("#red-ui-workspace-tabs
|
|
18232
|
+
} while ($("#red-ui-workspace-tabs li[flowname='"+RED._('workspace.defaultName',{number:workspaceIndex})+"']").size() !== 0);
|
|
18233
18233
|
|
|
18234
18234
|
ws = {
|
|
18235
18235
|
type: "tab",
|
|
@@ -18242,12 +18242,15 @@ RED.workspaces = (function() {
|
|
|
18242
18242
|
};
|
|
18243
18243
|
RED.nodes.addWorkspace(ws,targetIndex);
|
|
18244
18244
|
workspace_tabs.addTab(ws,targetIndex);
|
|
18245
|
+
|
|
18245
18246
|
workspace_tabs.activateTab(tabId);
|
|
18246
18247
|
if (!skipHistoryEntry) {
|
|
18247
18248
|
RED.history.push({t:'add',workspaces:[ws],dirty:RED.nodes.dirty()});
|
|
18248
18249
|
RED.nodes.dirty(true);
|
|
18249
18250
|
}
|
|
18250
18251
|
}
|
|
18252
|
+
$("#red-ui-tab-"+(ws.id.replace(".","-"))).attr("flowname",ws.label)
|
|
18253
|
+
|
|
18251
18254
|
RED.view.focus();
|
|
18252
18255
|
return ws;
|
|
18253
18256
|
}
|
|
@@ -18371,10 +18374,20 @@ RED.workspaces = (function() {
|
|
|
18371
18374
|
},
|
|
18372
18375
|
onhide: function(tab) {
|
|
18373
18376
|
hideStack.push(tab.id);
|
|
18377
|
+
|
|
18378
|
+
var hiddenTabs = JSON.parse(RED.settings.getLocal("hiddenTabs")||"{}");
|
|
18379
|
+
hiddenTabs[tab.id] = true;
|
|
18380
|
+
RED.settings.setLocal("hiddenTabs",JSON.stringify(hiddenTabs));
|
|
18381
|
+
|
|
18374
18382
|
RED.events.emit("workspace:hide",{workspace: tab.id})
|
|
18375
18383
|
},
|
|
18376
18384
|
onshow: function(tab) {
|
|
18377
18385
|
removeFromHideStack(tab.id);
|
|
18386
|
+
|
|
18387
|
+
var hiddenTabs = JSON.parse(RED.settings.getLocal("hiddenTabs")||"{}");
|
|
18388
|
+
delete hiddenTabs[tab.id];
|
|
18389
|
+
RED.settings.setLocal("hiddenTabs",JSON.stringify(hiddenTabs));
|
|
18390
|
+
|
|
18378
18391
|
RED.events.emit("workspace:show",{workspace: tab.id})
|
|
18379
18392
|
},
|
|
18380
18393
|
minimumActiveTabWidth: 150,
|
|
@@ -18705,9 +18718,6 @@ RED.workspaces = (function() {
|
|
|
18705
18718
|
}
|
|
18706
18719
|
if (workspace_tabs.contains(id)) {
|
|
18707
18720
|
workspace_tabs.hideTab(id);
|
|
18708
|
-
var hiddenTabs = JSON.parse(RED.settings.getLocal("hiddenTabs")||"{}");
|
|
18709
|
-
hiddenTabs[id] = true;
|
|
18710
|
-
RED.settings.setLocal("hiddenTabs",JSON.stringify(hiddenTabs));
|
|
18711
18721
|
}
|
|
18712
18722
|
},
|
|
18713
18723
|
isHidden: function(id) {
|
|
@@ -18735,14 +18745,11 @@ RED.workspaces = (function() {
|
|
|
18735
18745
|
}
|
|
18736
18746
|
workspace_tabs.activateTab(id);
|
|
18737
18747
|
}
|
|
18738
|
-
var hiddenTabs = JSON.parse(RED.settings.getLocal("hiddenTabs")||"{}");
|
|
18739
|
-
delete hiddenTabs[id];
|
|
18740
|
-
RED.settings.setLocal("hiddenTabs",JSON.stringify(hiddenTabs));
|
|
18741
18748
|
},
|
|
18742
18749
|
refresh: function() {
|
|
18743
18750
|
RED.nodes.eachWorkspace(function(ws) {
|
|
18744
18751
|
workspace_tabs.renameTab(ws.id,ws.label);
|
|
18745
|
-
|
|
18752
|
+
$("#red-ui-tab-"+(ws.id.replace(".","-"))).attr("flowname",ws.label)
|
|
18746
18753
|
})
|
|
18747
18754
|
RED.nodes.eachSubflow(function(sf) {
|
|
18748
18755
|
if (workspace_tabs.contains(sf.id)) {
|
|
@@ -32529,7 +32536,9 @@ RED.editor = (function() {
|
|
|
32529
32536
|
}
|
|
32530
32537
|
});
|
|
32531
32538
|
}
|
|
32532
|
-
if (!
|
|
32539
|
+
if (!old_env && new_env.length === 0) {
|
|
32540
|
+
delete node.env;
|
|
32541
|
+
} else if (!isSameObj(old_env, new_env)) {
|
|
32533
32542
|
editState.changes.env = node.env;
|
|
32534
32543
|
if (new_env.length === 0) {
|
|
32535
32544
|
delete node.env;
|
|
@@ -34354,7 +34363,7 @@ RED.editor = (function() {
|
|
|
34354
34363
|
var currentExpression = expressionEditor.getValue();
|
|
34355
34364
|
var expr;
|
|
34356
34365
|
var usesContext = false;
|
|
34357
|
-
var legacyMode = /(^|[^a-zA-Z0-9_'"])msg([^a-zA-Z0-9_'"]|$)/.test(currentExpression);
|
|
34366
|
+
var legacyMode = /(^|[^a-zA-Z0-9_'".])msg([^a-zA-Z0-9_'"]|$)/.test(currentExpression);
|
|
34358
34367
|
$(".red-ui-editor-type-expression-legacy").toggle(legacyMode);
|
|
34359
34368
|
try {
|
|
34360
34369
|
expr = jsonata(currentExpression);
|
|
@@ -34643,7 +34652,8 @@ RED.editor = (function() {
|
|
|
34643
34652
|
clearTimeout: true,
|
|
34644
34653
|
setInterval: true,
|
|
34645
34654
|
clearInterval: true
|
|
34646
|
-
}
|
|
34655
|
+
},
|
|
34656
|
+
extraLibs: options.extraLibs
|
|
34647
34657
|
});
|
|
34648
34658
|
if (options.cursor) {
|
|
34649
34659
|
expressionEditor.gotoLine(options.cursor.row+1,options.cursor.column,false);
|
|
@@ -37662,6 +37672,7 @@ RED.clipboard = (function() {
|
|
|
37662
37672
|
text: RED._("common.label.cancel"),
|
|
37663
37673
|
click: function() {
|
|
37664
37674
|
$( this ).dialog( "close" );
|
|
37675
|
+
RED.view.focus();
|
|
37665
37676
|
}
|
|
37666
37677
|
},
|
|
37667
37678
|
{ // red-ui-clipboard-dialog-download
|
|
@@ -37672,6 +37683,7 @@ RED.clipboard = (function() {
|
|
|
37672
37683
|
var data = $("#red-ui-clipboard-dialog-export-text").val();
|
|
37673
37684
|
downloadData("flows.json", data);
|
|
37674
37685
|
$( this ).dialog( "close" );
|
|
37686
|
+
RED.view.focus();
|
|
37675
37687
|
}
|
|
37676
37688
|
},
|
|
37677
37689
|
{ // red-ui-clipboard-dialog-export
|
|
@@ -37686,6 +37698,7 @@ RED.clipboard = (function() {
|
|
|
37686
37698
|
$( this ).dialog( "close" );
|
|
37687
37699
|
copyText(flowData);
|
|
37688
37700
|
RED.notify(RED._("clipboard.nodesExported"),{id:"clipboard"});
|
|
37701
|
+
RED.view.focus();
|
|
37689
37702
|
} else {
|
|
37690
37703
|
var flowToExport = $("#red-ui-clipboard-dialog-export-text").val();
|
|
37691
37704
|
var selectedPath = activeLibraries[activeTab].getSelected();
|
|
@@ -37701,6 +37714,7 @@ RED.clipboard = (function() {
|
|
|
37701
37714
|
contentType: "application/json; charset=utf-8"
|
|
37702
37715
|
}).done(function() {
|
|
37703
37716
|
$(dialog).dialog( "close" );
|
|
37717
|
+
RED.view.focus();
|
|
37704
37718
|
RED.notify(RED._("library.exportedToLibrary"),"success");
|
|
37705
37719
|
}).fail(function(xhr,textStatus,err) {
|
|
37706
37720
|
if (xhr.status === 401) {
|
|
@@ -37762,6 +37776,7 @@ RED.clipboard = (function() {
|
|
|
37762
37776
|
}
|
|
37763
37777
|
}
|
|
37764
37778
|
$( this ).dialog( "close" );
|
|
37779
|
+
RED.view.focus();
|
|
37765
37780
|
}
|
|
37766
37781
|
},
|
|
37767
37782
|
{ // red-ui-clipboard-dialog-import-conflict
|
|
@@ -37794,6 +37809,7 @@ RED.clipboard = (function() {
|
|
|
37794
37809
|
// console.table(pendingImportConfig.importNodes.map(function(n) { return {id:n.id,type:n.type,result:importMap[n.id]}}))
|
|
37795
37810
|
RED.view.importNodes(newNodes, pendingImportConfig.importOptions);
|
|
37796
37811
|
$( this ).dialog( "close" );
|
|
37812
|
+
RED.view.focus();
|
|
37797
37813
|
}
|
|
37798
37814
|
}
|
|
37799
37815
|
],
|
|
@@ -38531,28 +38547,25 @@ RED.clipboard = (function() {
|
|
|
38531
38547
|
if (truncated) {
|
|
38532
38548
|
msg += "_truncated";
|
|
38533
38549
|
}
|
|
38534
|
-
|
|
38535
|
-
|
|
38536
|
-
|
|
38537
|
-
|
|
38538
|
-
|
|
38539
|
-
|
|
38540
|
-
|
|
38541
|
-
|
|
38542
|
-
|
|
38543
|
-
|
|
38544
|
-
|
|
38545
|
-
|
|
38546
|
-
|
|
38547
|
-
|
|
38548
|
-
|
|
38549
|
-
|
|
38550
|
-
|
|
38551
|
-
}
|
|
38552
|
-
return result;
|
|
38550
|
+
navigator.clipboard.writeText(value).then(function () {
|
|
38551
|
+
if (element) {
|
|
38552
|
+
var popover = RED.popover.create({
|
|
38553
|
+
target: element,
|
|
38554
|
+
direction: 'left',
|
|
38555
|
+
size: 'small',
|
|
38556
|
+
content: RED._(msg)
|
|
38557
|
+
});
|
|
38558
|
+
setTimeout(function() {
|
|
38559
|
+
popover.close();
|
|
38560
|
+
},1000);
|
|
38561
|
+
popover.open();
|
|
38562
|
+
}
|
|
38563
|
+
if (currentFocus) {
|
|
38564
|
+
$(currentFocus).focus();
|
|
38565
|
+
}
|
|
38566
|
+
}).catch(err => { console.error("Failed to copy:",err) });
|
|
38553
38567
|
}
|
|
38554
38568
|
|
|
38555
|
-
|
|
38556
38569
|
function importNodes(nodesStr,addFlow) {
|
|
38557
38570
|
var newNodes = nodesStr;
|
|
38558
38571
|
if (typeof nodesStr === 'string') {
|
|
@@ -38827,8 +38840,6 @@ RED.clipboard = (function() {
|
|
|
38827
38840
|
init: function() {
|
|
38828
38841
|
setupDialogs();
|
|
38829
38842
|
|
|
38830
|
-
$('<textarea type="text" id="red-ui-clipboard-hidden" tabIndex="-1">').appendTo("#red-ui-editor");
|
|
38831
|
-
|
|
38832
38843
|
RED.actions.add("core:show-export-dialog",showExportNodes);
|
|
38833
38844
|
RED.actions.add("core:show-import-dialog",showImportNodes);
|
|
38834
38845
|
|