UNPKG

doc-red

Version:

A plugin for Node-RED which helps to documentate and enhance your workspace.

770 lines 19.3 kB
[ { "id": "88ccbc5be73df02c", "type": "tab", "label": "Flow 1", "disabled": false, "info": "# TODO important things\r\n\r\nthis flow needs some work\r\n\r\n- [ ] add more useful nodes\r\n- [ ] add some useless nodes for fun\r\n- [ ] delete the useless nodes to have a clean workspace\r\n- always keep the workspace clean\r\n\r\n# other things\r\nhello world", "env": [] }, { "id": "7af78f3eb7943a0c", "type": "tab", "label": "Flow 2", "disabled": false, "info": "# TODO\r\n- [ ] create a useful flow here", "env": [] }, { "id": "5bd9a15cdb92542d", "type": "tab", "label": "Flow 3", "disabled": false, "info": "", "env": [] }, { "id": "4168ecac79119914", "type": "subflow", "name": "Subflow 1", "info": "# TODO\r\ndo subflow stuff xx", "category": "", "in": [], "out": [], "env": [], "meta": {}, "color": "#DDAA99" }, { "id": "9ecf897c9f95a858", "type": "subflow", "name": "Subflow 2", "info": "# TODO\r\nimplement subflow 2\r\n\r\n# Documentation\r\nthis is a subflow\r\n\r\n# Outputs\r\nThis is an additional output text\r\n- with list element\r\n\r\n# Inputs\r\nThis is an additional input text\r\n1. with num list", "category": "", "in": [ { "x": 50, "y": 30, "wires": [] } ], "out": [ { "x": 810, "y": 160, "wires": [] }, { "x": 810, "y": 240, "wires": [] }, { "x": 740, "y": 320, "wires": [] } ], "env": [], "meta": {}, "color": "#DDAA99", "outputLabels": [ "templateOutput 1", "templateOutput 2", "" ] }, { "id": "d6a193d8f5a00b21", "type": "subflow", "name": "Subflow 3", "info": "# Docu\r\nSubflow 3 should have a Docu\r\n\r\n# TODO\r\n- [ ] add a Docu\r\n\r\n# Outputs", "category": "", "in": [], "out": [ { "x": 650, "y": 120, "wires": [ { "id": "34e65f5feba5c24f", "port": 0 } ] }, { "x": 690, "y": 180, "wires": [ { "id": "34e65f5feba5c24f", "port": 1 } ] } ], "env": [], "meta": {}, "color": "#DDAA99", "outputLabels": [ "default", "my second output" ] }, { "id": "435c7258d0d57116", "type": "group", "z": "88ccbc5be73df02c", "name": "my group", "style": { "label": true }, "nodes": [ "dc88e356249f5130", "f0669c80e99966f8" ], "x": 74, "y": 179, "w": 612, "h": 82, "info": "# Todo\r\ninsert useful stuff\r\n\r\n# Docu\r\nGroup docu" }, { "id": "900e9aebd26f2c84", "type": "inject", "z": "4168ecac79119914", "name": "", "props": [ { "p": "payload" }, { "p": "topic", "vt": "str" } ], "repeat": "", "crontab": "", "once": false, "onceDelay": 0.1, "topic": "", "payload": "", "payloadType": "date", "x": 200, "y": 80, "wires": [ [ "addcf838a0109da5" ] ] }, { "id": "addcf838a0109da5", "type": "function", "z": "4168ecac79119914", "name": "function 1", "func": "\nreturn msg;", "outputs": 1, "noerr": 0, "initialize": "", "finalize": "", "libs": [], "x": 400, "y": 80, "wires": [ [ "97cba97f51e5d2d1" ] ] }, { "id": "97cba97f51e5d2d1", "type": "debug", "z": "4168ecac79119914", "name": "debug 3", "active": true, "tosidebar": true, "console": false, "tostatus": false, "complete": "false", "statusVal": "", "statusType": "auto", "x": 620, "y": 80, "wires": [] }, { "id": "450290bf3b1057c9", "type": "inject", "z": "9ecf897c9f95a858", "name": "", "props": [ { "p": "payload" }, { "p": "topic", "vt": "str" } ], "repeat": "", "crontab": "", "once": false, "onceDelay": 0.1, "topic": "", "payload": "", "payloadType": "date", "x": 140, "y": 120, "wires": [ [ "a5e8524e45b32ce6" ] ] }, { "id": "abdd382a93e8ecd5", "type": "debug", "z": "9ecf897c9f95a858", "name": "debug 4", "active": true, "tosidebar": true, "console": false, "tostatus": false, "complete": "false", "statusVal": "", "statusType": "auto", "x": 640, "y": 120, "wires": [] }, { "id": "a5e8524e45b32ce6", "type": "change", "z": "9ecf897c9f95a858", "name": "node in sf2", "rules": [ { "t": "set", "p": "payload", "pt": "msg", "to": "", "tot": "str" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 370, "y": 120, "wires": [ [ "abdd382a93e8ecd5" ] ], "info": "# Doc\r\n\r\nYour advertisment could stay here!\r\n\r\n# TODO" }, { "id": "2f5766c12aff4a32", "type": "inject", "z": "d6a193d8f5a00b21", "name": "", "props": [ { "p": "payload" }, { "p": "topic", "vt": "str" } ], "repeat": "", "crontab": "", "once": false, "onceDelay": 0.1, "topic": "", "payload": "", "payloadType": "date", "x": 180, "y": 140, "wires": [ [ "34e65f5feba5c24f" ] ] }, { "id": "34e65f5feba5c24f", "type": "switch", "z": "d6a193d8f5a00b21", "name": "node in sf3", "property": "payload", "propertyType": "msg", "rules": [ { "t": "eq", "v": "", "vt": "str" }, { "t": "eq", "v": "", "vt": "str" } ], "checkall": "true", "repair": false, "outputs": 2, "x": 410, "y": 140, "wires": [ [], [] ], "info": "# TODO implement logic\r\n\r\n# Hello World" }, { "id": "830a24bb23f2264f", "type": "inject", "z": "88ccbc5be73df02c", "name": "start", "props": [ { "p": "payload" }, { "p": "topic", "vt": "str" } ], "repeat": "", "crontab": "", "once": false, "onceDelay": 0.1, "topic": "", "payload": "", "payloadType": "date", "x": 130, "y": 120, "wires": [ [ "68f68ee73978dd82" ] ], "info": "# Input\r\n\r\n# Output\r\n" }, { "id": "e54779751f55f485", "type": "debug", "z": "88ccbc5be73df02c", "name": "debug 1", "active": true, "tosidebar": true, "console": false, "tostatus": false, "complete": "payload", "targetType": "msg", "statusVal": "", "statusType": "auto", "x": 960, "y": 100, "wires": [], "info": "# Outputs" }, { "id": "0f61bb8bf562134e", "type": "function", "z": "88ccbc5be73df02c", "name": "does something important", "func": "\nreturn msg;", "outputs": 3, "noerr": 0, "initialize": "", "finalize": "", "libs": [], "x": 630, "y": 120, "wires": [ [ "e54779751f55f485" ], [], [] ], "outputLabels": [ "default", "special", "error" ], "info": "# Documentation\r\n\r\nThis is a _very detailed_ documentation written in a **markdown** editor.\r\n\r\n## It is very long and has too much text.\r\n\r\nTherefore it should not be able to see all in the popover.\r\n\r\n## But don't worry, you can scroll downwards.\r\n\r\nAt the end there will be the edit button....\r\n\r\n## You don't have to read all this\r\n\r\n## This is only to make the documentation very long...\r\n\r\n## For real...\r\n\r\nMaybe this Button should have a absolute position.\r\n\r\nBut not for now...\r\n\r\nYou have to scroll...\r\n\r\n# Input\r\n\r\n# Output\r\n\r\nThis is a docu to the three outputs, but only the special and the error output are documentated...\r\n\r\n## special\r\n\r\nThis special output would be much more important if the flow would go on!\r\n\r\n## error\r\n\r\nWell, this is unfortunate...\r\n\r\n\r\n# TODO\r\n\r\n- [x] todo is in tooltip on top\r\n- [x] output is second\r\n- [x] rest is documentation \r\n" }, { "id": "68f68ee73978dd82", "type": "function", "z": "88ccbc5be73df02c", "name": "not yet implemented", "func": "\nreturn msg;", "outputs": 1, "timeout": "", "noerr": 0, "initialize": "", "finalize": "", "libs": [], "x": 340, "y": 120, "wires": [ [ "0f61bb8bf562134e" ] ], "outputLabels": [ "the only one" ], "info": "# Todo short but important info!\r\n\r\n## a useful list\r\n\r\n- [x] thinking what should the node do\r\n- [ ] writing code\r\n- [ ] enjoy\r\n- [ ] buy milk\r\n\r\n## other things to reconsider\r\n\r\nthere is nothing to reconsider\r\n\r\n# some additional text (documentation)\r\nthis node does some things\r\n\r\n# Outputs\r\n" }, { "id": "dc88e356249f5130", "type": "inject", "z": "88ccbc5be73df02c", "g": "435c7258d0d57116", "name": "node in a group", "props": [ { "p": "payload" }, { "p": "topic", "vt": "str" } ], "repeat": "", "crontab": "", "once": false, "onceDelay": 0.1, "topic": "", "payload": "", "payloadType": "date", "x": 200, "y": 220, "wires": [ [ "f0669c80e99966f8" ] ], "info": "# Todo\r\na todo in a group" }, { "id": "f0669c80e99966f8", "type": "debug", "z": "88ccbc5be73df02c", "g": "435c7258d0d57116", "name": "debug 2", "active": true, "tosidebar": true, "console": false, "tostatus": false, "complete": "false", "statusVal": "", "statusType": "auto", "x": 580, "y": 220, "wires": [] }, { "id": "e6e2162222bf6267", "type": "subflow:4168ecac79119914", "z": "88ccbc5be73df02c", "name": "Subflow 1 node (no own Todo and Documentation)", "x": 264, "y": 320, "wires": [] }, { "id": "c920ee5e47536231", "type": "subflow:9ecf897c9f95a858", "z": "88ccbc5be73df02c", "name": "Subflow 2 (own documentation)", "x": 204, "y": 380, "wires": [ [], [], [] ], "outputLabels": [ "Node output 1", "", "" ], "info": "This documentation overwrites the subflow documentation...\r\n\r\nBut not the Todo... only if a Todo header is set here" }, { "id": "2780dd2ee5f4686d", "type": "subflow:d6a193d8f5a00b21", "z": "88ccbc5be73df02c", "name": "Subflow 3 node (own todo)", "x": 184, "y": 440, "wires": [ [], [] ], "icon": "node-red/light.svg", "info": "# TODO \r\n- this overwrites the todo docu from sf3" }, { "id": "e5a74e06a1d43956", "type": "comment", "z": "88ccbc5be73df02c", "name": "completed tasks", "info": "# TODO\n\n- [x] done\n- [x] also done\n- [x] somehow done\n- [x] really done\n", "x": 154, "y": 60, "wires": [] }, { "id": "e8d8ea7d30247e26", "type": "switch", "z": "88ccbc5be73df02c", "name": "", "property": "payload", "propertyType": "msg", "rules": [ { "t": "eq", "v": "", "vt": "str" }, { "t": "btwn", "v": "1", "vt": "num", "v2": "5", "v2t": "num" }, { "t": "eq", "v": "", "vt": "str" }, { "t": "eq", "v": "", "vt": "str" } ], "checkall": "true", "repair": false, "outputs": 4, "x": 930, "y": 220, "wires": [ [], [], [], [] ], "info": "# Outputs" }, { "id": "652aa3c0f951179f", "type": "switch", "z": "88ccbc5be73df02c", "name": "", "property": "payload", "propertyType": "msg", "rules": [ { "t": "eq", "v": "", "vt": "str" }, { "t": "eq", "v": "", "vt": "str" }, { "t": "eq", "v": "", "vt": "str" }, { "t": "eq", "v": "", "vt": "str" } ], "checkall": "true", "repair": false, "outputs": 4, "x": 790, "y": 220, "wires": [ [], [], [], [] ], "inputLabels": [ "incoming data" ], "outputLabels": [ "default", "special 1", "another special", "error" ], "info": "# Outputs\r\n\r\nThis is a generell hint to the outputs\r\n\r\n## special 1\r\nThis is a hint for the special 1 output.\r\n- Why does it exists?\r\n- Does special 2 exists?\r\n\r\n# Inputs" }, { "id": "dfbba731a8565242", "type": "switch", "z": "88ccbc5be73df02c", "name": "", "property": "payload", "propertyType": "msg", "rules": [ { "t": "eq", "v": "", "vt": "str" }, { "t": "eq", "v": "", "vt": "str" }, { "t": "eq", "v": "", "vt": "str" }, { "t": "eq", "v": "", "vt": "str" }, { "t": "eq", "v": "", "vt": "str" } ], "checkall": "true", "repair": false, "outputs": 5, "x": 890, "y": 360, "wires": [ [], [], [], [], [] ], "info": "# Input\r\n\r\n# Output" }, { "id": "deb69ff56b4186a2", "type": "debug", "z": "88ccbc5be73df02c", "name": "debug 7", "active": true, "tosidebar": true, "console": false, "tostatus": false, "complete": "payload", "targetType": "msg", "statusVal": "", "statusType": "auto", "x": 580, "y": 440, "wires": [] }, { "id": "7a1c3d8d36ad7079", "type": "function", "z": "88ccbc5be73df02c", "name": "function 2", "func": "\nreturn msg;", "outputs": 1, "noerr": 0, "initialize": "", "finalize": "", "libs": [], "x": 420, "y": 600, "wires": [ [] ], "info": "# Input\r\n\r\n # Output" }, { "id": "0ee4a7e83f482b8c", "type": "inject", "z": "7af78f3eb7943a0c", "name": "", "props": [ { "p": "payload" }, { "p": "topic", "vt": "str" } ], "repeat": "", "crontab": "", "once": false, "onceDelay": 0.1, "topic": "", "payload": "", "payloadType": "date", "x": 160, "y": 100, "wires": [ [ "f15c700167abeacd" ] ] }, { "id": "f33bb44d267b43e3", "type": "debug", "z": "7af78f3eb7943a0c", "name": "debug 6", "active": true, "tosidebar": true, "console": false, "tostatus": false, "complete": "false", "statusVal": "", "statusType": "auto", "x": 560, "y": 100, "wires": [] }, { "id": "f15c700167abeacd", "type": "function", "z": "7af78f3eb7943a0c", "name": "node in workspace 2", "func": "\nreturn msg;", "outputs": 1, "noerr": 0, "initialize": "", "finalize": "", "libs": [], "x": 360, "y": 100, "wires": [ [ "f33bb44d267b43e3" ] ], "info": "# TODO\r\n- [ ] create a function" } ]