@gregoriusrippenstein/node-red-contrib-introspection 0.15.2 → 0.15.3

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gregoriusrippenstein/node-red-contrib-introspection",
3
- "version": "0.15.2",
3
+ "version": "0.15.3",
4
4
  "dependencies": {
5
5
  "got": "^13",
6
6
  "uglify-js": "^3.17.4",
@@ -16,7 +16,7 @@
16
16
 
17
17
  function setupTreeMsgTracerlist(){try{$("#node-input-msgtracer-trace-treelist").treeList("empty"),$("#node-input-msgtracer-trace-treelist").treeList("data",[])}catch(e){$("#node-input-msgtracer-trace-treelist").css({width:"100%",height:"calc(100%)"}).treeList({multi:!1}).on("treelistitemmouseover",function(e,t){t.node&&RED.workspaces.active()==t.node.z&&(RED.view.reveal(t.node.id,!0),RED.view.redraw())}).on("treelistitemmouseout",function(e,t){}).on("treelistselect",function(e,t){t.node&&(RED.workspaces.show(t.node.z,!1,!1,!0),RED.view.reveal(t.node.id,!0),RED.view.redraw(),$(".red-ui-debug-msg").css("background-color",""),$(".red-ui-debug-msg-node-"+t.node.id).css("background-color","red"))}).on("treelistconfirm",function(e,t){var r;t.node&&(r=t.node.id,setTimeout(()=>{var e=RED.nodes.node(r);e&&(RED.view.reveal(e.id),RED.view.select(e.id),RED.editor.edit(e)),r==RED.workspaces.active()&&RED.workspaces.edit()},50))}),$("#node-input-msgtracer-trace-treelist-filter").show();var r=$("#node-input-msgtracer-trace-treelist-filter").searchBox({style:"compact",delay:300,change:function(){var e,t=$(this).val().trim().toLowerCase();""===t?($("#node-input-msgtracer-trace-treelist").treeList("filter",null),r.searchBox("count","")):(e=$("#node-input-msgtracer-trace-treelist").treeList("filter",function(e){return-1<e._label.toLowerCase().indexOf(t)||-1<e.node.type.toLowerCase().indexOf(t)||-1<e.node.id.toLowerCase().indexOf(t)||-1<e.sublabel.toLowerCase().indexOf(t)}),r.searchBox("count",e+" / "+$("#node-input-msgtracer-trace-treelist").treeList("data").length))}})}}function msgTracerDebugOff(){$.ajax({url:"MsgTracer/debug/off",type:"POST",contentType:"application/json; charset=utf-8",data:JSON.stringify({}),success:function(e){},error:function(e,t,r){}})}function msgTracerTracingOff(){$.ajax({url:"MsgTracer/msgtracing/off",type:"POST",contentType:"application/json; charset=utf-8",data:JSON.stringify({}),success:function(e){},error:function(e,t,r){}})}function uncheckAllTracing(){$("#node-input-msgtracer-toggle-all").prop("checked",!1),$("#node-input-msgtracer-toggle").prop("checked",!1),$("#node-input-msgtracer-msgtodebug").prop("checked",!1),$("#node-input-msgtracer-msgtodebug-all").prop("checked",!1)}function setupFailsafe(){clearInterval(window.msgTracerInterval),window.msgTracerCounter=0,window.msgTracerInterval=setInterval(()=>{window.msgTracerCounter>window.msgTracer_MAX_MSG_PER_SECOND&&(RED.notify("Message tracing flooding detected, deactivating tracing automatically.",{type:"error",timeout:3e3}),uncheckAllTracing(),msgTracerDebugOff(),msgTracerTracingOff(),clearInterval(window.msgTracerInterval)),window.msgTracerCounter=0},1e3)}function setupFailsafeForClampMode(){clearInterval(window.msgTracerInterval),window.msgTracerCounter=0,window.msgTracerInterval=setInterval(()=>{window.msgTracerCounter>window.msgTracer_MAX_MSG_PER_SECOND&&(RED.notify("Message tracing flooding detected, deactivating tracing automatically.",{type:"error",timeout:3e3}),RED.view.select([]),uncheckAllTracing(),$("#node-input-msgtracer-clamp-mode-with-debug").prop("checked",!1),$("#node-input-msgtracer-clamp-mode-with-debug").prop("disabled",!1),$("#node-input-msgtracer-clamp-mode-status").hide(),$("#node-input-msgtracer-clamp-mode").prop("checked",!1),msgTracerDebugOff(),msgTracerTracingOff(),clearInterval(window.msgTracerInterval)),window.msgTracerCounter=0},1e3)}function toggleClampWithDebug(e){$("#node-input-msgtracer-clamp-mode-with-debug").is(":checked")||(msgTracerDebugOff(),$("#node-input-msgtracer-clamp-mode").is(":checked")&&$("#node-input-msgtracer-clamp-mode-with-debug").prop("disabled",!0))}function toggleClampWireTappingInBackend(e){if($("#node-input-msgtracer-clamp-mode").is(":checked")){$("#node-input-msgtracer-clamp-mode-with-debug").is("checked")||$("#node-input-msgtracer-clamp-mode-with-debug").prop("disabled",!0);let o=e=>{var t,r,n=t=>{uncheckAllTracing(),$.ajax({url:"MsgTracer/msgtracing/off",type:"POST",contentType:"application/json; charset=utf-8",data:JSON.stringify({}),error:function(e,t,r){},success:function(e){$.ajax({url:"MsgTracer/msgtracing/on",type:"POST",contentType:"application/json; charset=utf-8",data:JSON.stringify({nodesSelected:t,allIsOn:!1}),error:function(e,t,r){},success:function(e){setupFailsafeForClampMode(),$("#node-input-msgtracer-clamp-mode-with-debug").is(":checked")?$.ajax({url:"MsgTracer/debug/on",type:"POST",contentType:"application/json; charset=utf-8",data:JSON.stringify({nodesSelected:t,allIsOn:!1}),success:function(e){},error:function(e,t,r){}}):($("#node-input-msgtracer-clamp-mode-with-debug").prop("disabled",!0),msgTracerDebugOff())}})}})};$("#node-input-msgtracer-clamp-mode").is(":checked")?(t=RED.view.selection()).links&&1==t.links.length?(r=[(r=RED.view.selection().links[0]).source.id,r.target.id],setupTreeMsgTracerlist(),n(r),$("#node-input-msgtracer-clamp-mode-status").show()):t.nodes&&0<t.nodes.length?(setupTreeMsgTracerlist(),n(t.nodes.map(e=>e.id)),$("#node-input-msgtracer-clamp-mode-status").show()):($("#node-input-msgtracer-clamp-mode-status").hide(),msgTracerTracingOff(),msgTracerDebugOff()):($("#node-input-msgtracer-clamp-mode-with-debug").prop("disabled",!1),clearInterval(window.msgTracerInterval),RED.events.off("view:selection-changed",o),$("#node-input-msgtracer-clamp-mode-status").hide())};RED.events.on("view:selection-changed",o)}else $("#node-input-msgtracer-clamp-mode-status").hide(),$("#node-input-msgtracer-clamp-mode-with-debug").prop("disabled",!1),msgTracerTracingOff(),msgTracerDebugOff()}function toggleDebugTracingInBackend(e){let t=$("#node-input-msgtracer-msgtodebug").is(":checked");var r=$("#node-input-msgtracer-msgtodebug-all").is(":checked"),n=RED.view.selection().nodes;clearInterval(window.msgTracerInterval),n||r||!t?n&&0<n.length&&r&&t?($("#node-input-msgtracer-msgtodebug").prop("checked",!1),$("#node-input-msgtracer-msgtodebug-all").prop("checked",!1),msgTracerDebugOff(),RED.notify("Debug Messages not toggled, both nodes selected and all nodes is on.",{type:"error",timeout:3e3})):(t?($("#node-input-msgtracer-clamp-mode-with-debug").prop("checked",!1),$("#node-input-msgtracer-clamp-mode").prop("checked",!1),toggleClampWireTappingInBackend()):$("#node-input-msgtracer-msgtodebug-all").prop("checked",!1),$.ajax({url:"MsgTracer/debug/"+(t?"on":"off"),type:"POST",contentType:"application/json; charset=utf-8",data:JSON.stringify({nodesSelected:selectionToNodeIdList(RED.view.selection().nodes),allIsOn:r}),success:function(e){RED.notify("Message debugging is <b>"+(t?"on":"off")+"</b>",{type:"success",timeout:3e3}),t&&setupFailsafe()},error:function(e,t,r){RED.notify("Message tracing failed: "+t,{type:"error",timeout:3e3})}})):($("#node-input-msgtracer-msgtodebug").prop("checked",!1),msgTracerDebugOff(),RED.notify("Debug Messages not toggled, first select nodes to be debugged <b>or</b> toggle 'all nodes' to on.",{type:"error",timeout:3e3}))}function toggleMsgTracingInBackend(e){let t=$("#node-input-msgtracer-toggle").is(":checked");var r=$("#node-input-msgtracer-toggle-all").is(":checked"),n=RED.view.selection().nodes;clearInterval(window.msgTracerInterval),n||r||!t?n&&0<n.length&&r&&t?($("#node-input-msgtracer-toggle-all").prop("checked",!1),$("#node-input-msgtracer-toggle").prop("checked",!1),msgTracerTracingOff(),RED.notify("Message tracing not toggled, nodes are selected <b>and</b> all nodes is checked.",{type:"error",timeout:3e3})):(t?($("#node-input-msgtracer-clamp-mode-with-debug").prop("checked",!1),$("#node-input-msgtracer-clamp-mode").prop("checked",!1),toggleClampWireTappingInBackend()):$("#node-input-msgtracer-toggle-all").prop("checked",!1),t&&setupTreeMsgTracerlist(),$.ajax({url:"MsgTracer/msgtracing/"+(t?"on":"off"),type:"POST",contentType:"application/json; charset=utf-8",data:JSON.stringify({nodesSelected:selectionToNodeIdList(RED.view.selection().nodes),allIsOn:r}),success:function(e){RED.notify("Message tracing is <b>"+(t?"on":"off")+"</b>",{type:"success",timeout:3e3}),t&&setupFailsafe()},error:function(e,t,r){RED.notify("Message tracing failed: "+t,{type:"error",timeout:3e3})}})):($("#node-input-msgtracer-toggle").prop("checked",!1),msgTracerTracingOff(),RED.notify("Message tracing not toggled, first select nodes to be traced <b>or</b> toggle 'all nodes' to on.",{type:"error",timeout:3e3}))}function selectionToNodeIdList(e){return!e||Array.isArray(e)&&0==e.length?[]:e.map(e=>"group"==e.type?selectionToNodeIdList(RED.nodes.group(e.id).nodes):e.id).flat(1/0)}window.msgTracer_MAX_MSG_PER_SECOND=100;
18
18
 
19
- function transformInjectToChangeNode(t){t&&t.preventDefault();t=[...(RED.view.selection().nodes||[]).filter(e=>"inject"==e.type),...(RED.view.selection().nodes||[]).filter(e=>"group"==e.type).map(e=>e.nodes.filter(e=>"inject"==e.type))].flat();if(0==(t=RED.nodes.createExportableNodeSet(t)).length)RED.notify("No inject nodes found in node selection",{type:"warning"});else{let e=t.map(o=>{var e={id:RED.nodes.id(),type:"change",name:o.name,action:"",property:"",from:"",to:"",reg:!1,x:0,y:0,wires:[[]]};return e.rules=o.props.map(e=>{var t={t:"set",p:e.p,pt:"msg",to:e.v,tot:e.vt};return"payload"==e.p?(t.to=o.payload,t.tot=o.payloadType):"topic"==e.p&&(t.to=o.topic),t}),e});setTimeout(()=>{RED.clipboard.import(),setTimeout(()=>{$("#red-ui-clipboard-dialog-import-text").val(JSON.stringify(e)).trigger("paste")},300)},400)}}
19
+ function transformInjectToChangeNode(t){t&&t.preventDefault();t=[...(RED.view.selection().nodes||[]).filter(e=>"inject"==e.type),...(RED.view.selection().nodes||[]).filter(e=>"group"==e.type).map(e=>e.nodes.filter(e=>"inject"==e.type))].flat();if(0==(t=RED.nodes.createExportableNodeSet(t)).length)RED.notify("No inject nodes found in node selection",{type:"warning"});else{let e=t.map(o=>{var e={id:RED.nodes.id(),type:"change",name:o.name,action:"",property:"",from:"",to:"",reg:!1,x:0,y:0,wires:[[]]};return e.rules=o.props.map(e=>{var t={t:"set",p:e.p,pt:"msg",to:e.v,tot:e.vt};return"payload"==e.p?(t.to=o.payload,t.tot=o.payloadType):"topic"==e.p&&(t.to=o.topic),t}),e});setTimeout(()=>{RED.clipboard.import(),setTimeout(()=>{$("#red-ui-clipboard-dialog-import-text").val(JSON.stringify(e)).trigger("paste")},300)},400)}}function insertJunctionBeforeNode(){var t,o,n;RED.view.selection().nodes&&1==RED.view.selection().nodes?.length?(t=RED.view.selection().nodes[0],o=RED.nodes.addJunction({type:"junction",id:RED.nodes.id(),x:t.x,y:t.y-40,z:t.z,w:0,h:0,_def:{defaults:{}},inputs:1,outputs:1,_config:{x:t.x,y:t.y-40}}),n=[],RED.nodes.eachLink(e=>{e.target.id==t.id&&(RED.nodes.addLink({source:e.source,sourcePort:e.sourcePort,target:o}),n.push(e))}),n.forEach(e=>RED.nodes.removeLink(e)),RED.nodes.addLink({source:o,sourcePort:0,target:t}),RED.nodes.dirty(!0),RED.view.redraw(!0,!0)):RED.notify("Only one node to be selected",{type:"error"})}
20
20
 
21
21
  // used to feature deactivate stuff
22
22
  let isNodeRedFive = () => {
@@ -363,6 +363,8 @@
363
363
 
364
364
  $('#node-input-highlight-debug-nodes-btn').on( 'click', highlightDebugNodesInPanel)
365
365
  $('#node-input-transform-inject-to-change-btn').on( 'click', transformInjectToChangeNode)
366
+ $('#node-input-insert-junction-before-node-btn').on( 'click', insertJunctionBeforeNode)
367
+
366
368
  $('#node-input-statistics-btn').on('click', (e) => {
367
369
  if ( e ) { e.preventDefault() }
368
370
  setupTreeListForNodeStats()
@@ -1122,6 +1124,8 @@
1122
1124
  class="red-ui-button"><i class="fa fa-pie-chart"></i> Stats</button>
1123
1125
  <button id="node-input-highlight-debug-nodes-btn"
1124
1126
  class="red-ui-button"><i class="fa fa-bug"></i> Highlight Debug Msg</button>
1127
+ <button id="node-input-insert-junction-before-node-btn"
1128
+ class="red-ui-button">Insert Junction Before Node</button>
1125
1129
  </div>
1126
1130
 
1127
1131
  <div class="form-row"