UNPKG

node-red-contrib-uibuilder

Version:

Easily create data-driven web UI's for Node-RED. Single- & Multi-page. Multiple UI's. Work with existing web development workflows or mix and match with no-code/low-code features.

810 lines (809 loc) 19.4 kB
[ { "id": "f748d0e6cc78a2ba", "type": "tab", "label": "uib-cache", "disabled": false, "info": "", "env": [] }, { "id": "c582e19b78889a25", "type": "group", "z": "f748d0e6cc78a2ba", "name": "Test uibuilder cache node without uibuilder \\n ", "style": { "fill": "#ffefbf", "fill-opacity": "0.34", "label": true, "color": "#000000" }, "nodes": [ "4a1f0bc164fe96de", "d948fc054b6c30ce", "fd7084be579b5186", "c4e341169cc82e9a", "5e8d1fafc5a22dd0", "1e87041b4bddbcba", "5a8f49f1dff31d2f", "8ea537cb67792d7f", "122489d70f19ca24", "0768c71d136a2c86", "d3685f462ab15042" ], "x": 54, "y": 83, "w": 932, "h": 278 }, { "id": "124607d308a0f6a6", "type": "group", "z": "f748d0e6cc78a2ba", "name": "Example of using the cache with uibuilder. Add 3 lists to the page then reload, only 2 re-appear. \\n ", "style": { "label": true, "fill": "#ffffff", "fill-opacity": "0.21", "color": "#000000" }, "nodes": [ "9c253e4c5651a568", "acccaec15b621319", "594248fc5dc5f799", "445a19cff9f8da1f", "f9af5b7d2545e9e5", "06327985e9dae780", "c6306e9378b9c1f2", "ed061d1aaea36b27", "2fac9874556f1c88", "4330971395e0a4b9", "49d6a6f1bd5358ee", "ac3988907ad3ccaa", "95d8b757da5c9fd4", "417119b1765dd5b1", "309727329638650e", "c13e434afccaa153", "fc7585830654783a", "0555cd3fcd3edcfb", "5e202f9e5b6827e6", "c3bdf6f53c48a1e0" ], "x": 54, "y": 383, "w": 1072, "h": 378 }, { "id": "c13e434afccaa153", "type": "junction", "z": "f748d0e6cc78a2ba", "g": "124607d308a0f6a6", "x": 320, "y": 640, "wires": [ [ "0555cd3fcd3edcfb" ] ] }, { "id": "fc7585830654783a", "type": "junction", "z": "f748d0e6cc78a2ba", "g": "124607d308a0f6a6", "x": 800, "y": 560, "wires": [ [ "c6306e9378b9c1f2" ] ] }, { "id": "4a1f0bc164fe96de", "type": "inject", "z": "f748d0e6cc78a2ba", "g": "c582e19b78889a25", "name": "", "props": [ { "p": "payload" } ], "repeat": "", "crontab": "", "once": false, "onceDelay": 0.1, "topic": "", "payload": "Empty Topic", "payloadType": "str", "x": 190, "y": 220, "wires": [ [ "c4e341169cc82e9a" ] ] }, { "id": "d948fc054b6c30ce", "type": "debug", "z": "f748d0e6cc78a2ba", "g": "c582e19b78889a25", "name": "", "active": true, "tosidebar": true, "console": false, "tostatus": false, "complete": "true", "targetType": "full", "statusVal": "", "statusType": "auto", "x": 890, "y": 220, "wires": [] }, { "id": "fd7084be579b5186", "type": "debug", "z": "f748d0e6cc78a2ba", "g": "c582e19b78889a25", "name": "", "active": true, "tosidebar": true, "console": false, "tostatus": false, "complete": "true", "targetType": "full", "statusVal": "", "statusType": "auto", "x": 670, "y": 180, "wires": [] }, { "id": "c4e341169cc82e9a", "type": "uib-cache", "z": "f748d0e6cc78a2ba", "g": "c582e19b78889a25", "cacheall": false, "cacheKey": "topic", "newcache": true, "num": "4", "storeName": "default", "name": "", "storeContext": "context", "varName": "uib_cache", "x": 470, "y": 220, "wires": [ [ "fd7084be579b5186", "5a8f49f1dff31d2f" ] ] }, { "id": "5e8d1fafc5a22dd0", "type": "inject", "z": "f748d0e6cc78a2ba", "g": "c582e19b78889a25", "name": "two", "props": [ { "p": "payload" }, { "p": "topic", "vt": "str" } ], "repeat": "", "crontab": "", "once": false, "onceDelay": 0.1, "topic": "two", "payload": "{\"a\":\"Number Two\",\"b\":{\"b1\":1,\"b2\":{\"b2i\":1,\"b2ii\":2}}}", "payloadType": "json", "x": 210, "y": 180, "wires": [ [ "c4e341169cc82e9a" ] ] }, { "id": "1e87041b4bddbcba", "type": "inject", "z": "f748d0e6cc78a2ba", "g": "c582e19b78889a25", "name": "one", "props": [ { "p": "payload" }, { "p": "topic", "vt": "str" } ], "repeat": "", "crontab": "", "once": false, "onceDelay": 0.1, "topic": "one", "payload": "Number One", "payloadType": "str", "x": 210, "y": 140, "wires": [ [ "c4e341169cc82e9a" ] ] }, { "id": "5a8f49f1dff31d2f", "type": "change", "z": "f748d0e6cc78a2ba", "g": "c582e19b78889a25", "name": "", "rules": [ { "t": "change", "p": "payload", "pt": "msg", "from": "Number", "fromt": "str", "to": "Some mumber", "tot": "str" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 720, "y": 220, "wires": [ [ "d948fc054b6c30ce" ] ] }, { "id": "8ea537cb67792d7f", "type": "inject", "z": "f748d0e6cc78a2ba", "g": "c582e19b78889a25", "name": "", "props": [ { "p": "payload" } ], "repeat": "", "crontab": "", "once": false, "onceDelay": 0.1, "topic": "", "payloadType": "str", "x": 115, "y": 280, "wires": [ [ "122489d70f19ca24" ] ], "l": false }, { "id": "122489d70f19ca24", "type": "function", "z": "f748d0e6cc78a2ba", "g": "c582e19b78889a25", "name": "REPLAY", "func": "\nreturn { \n \"uibuilderCtrl\": \"replay\", \n \"cacheControl\": \"REPLAY\", \n}", "outputs": 1, "noerr": 0, "initialize": "", "finalize": "", "libs": [], "x": 200, "y": 280, "wires": [ [ "c4e341169cc82e9a" ] ] }, { "id": "0768c71d136a2c86", "type": "inject", "z": "f748d0e6cc78a2ba", "g": "c582e19b78889a25", "name": "", "props": [ { "p": "payload" } ], "repeat": "", "crontab": "", "once": false, "onceDelay": 0.1, "topic": "", "payloadType": "str", "x": 115, "y": 320, "wires": [ [ "d3685f462ab15042" ] ], "l": false }, { "id": "d3685f462ab15042", "type": "function", "z": "f748d0e6cc78a2ba", "g": "c582e19b78889a25", "name": "CLEAR", "func": "\nreturn { \n \"uibuilderCtrl\": \"clear cache\", \n \"cacheControl\": \"CLEAR\", \n}", "outputs": 1, "noerr": 0, "initialize": "", "finalize": "", "libs": [], "x": 200, "y": 320, "wires": [ [ "c4e341169cc82e9a" ] ] }, { "id": "30809c9afab08529", "type": "comment", "z": "f748d0e6cc78a2ba", "name": "Examples of using the uib-cache node with and without uibuilder itself.", "info": "", "x": 310, "y": 40, "wires": [] }, { "id": "9c253e4c5651a568", "type": "uibuilder", "z": "f748d0e6cc78a2ba", "g": "124607d308a0f6a6", "name": "", "topic": "", "url": "uib-cache-example", "fwdInMessages": false, "allowScripts": false, "allowStyles": false, "copyIndex": true, "templateFolder": "blank", "extTemplate": "", "showfolder": true, "reload": false, "sourceFolder": "src", "deployedVersion": "5.0.0-dev.2", "showMsgUib": false, "x": 680, "y": 480, "wires": [ [ "49d6a6f1bd5358ee" ], [ "445a19cff9f8da1f", "c6306e9378b9c1f2" ] ] }, { "id": "acccaec15b621319", "type": "inject", "z": "f748d0e6cc78a2ba", "g": "124607d308a0f6a6", "name": "Empty Topic (not cached)", "props": [ { "p": "payload" }, { "p": "topic", "vt": "str" } ], "repeat": "", "crontab": "", "once": false, "onceDelay": 0.1, "topic": "", "payload": "Empty Topic", "payloadType": "str", "x": 210, "y": 720, "wires": [ [ "c13e434afccaa153" ] ] }, { "id": "594248fc5dc5f799", "type": "debug", "z": "f748d0e6cc78a2ba", "g": "124607d308a0f6a6", "name": "", "active": true, "tosidebar": true, "console": false, "tostatus": false, "complete": "true", "targetType": "full", "statusVal": "", "statusType": "auto", "x": 1065, "y": 460, "wires": [], "l": false }, { "id": "445a19cff9f8da1f", "type": "debug", "z": "f748d0e6cc78a2ba", "d": true, "g": "124607d308a0f6a6", "name": "", "active": false, "tosidebar": true, "console": false, "tostatus": false, "complete": "true", "targetType": "full", "statusVal": "", "statusType": "auto", "x": 885, "y": 520, "wires": [], "l": false }, { "id": "f9af5b7d2545e9e5", "type": "debug", "z": "f748d0e6cc78a2ba", "d": true, "g": "124607d308a0f6a6", "name": "", "active": false, "tosidebar": true, "console": false, "tostatus": false, "complete": "true", "targetType": "full", "statusVal": "", "statusType": "auto", "x": 595, "y": 440, "wires": [], "l": false }, { "id": "06327985e9dae780", "type": "link in", "z": "f748d0e6cc78a2ba", "g": "124607d308a0f6a6", "name": "", "links": [ "c6306e9378b9c1f2", "5e202f9e5b6827e6" ], "x": 255, "y": 480, "wires": [ [ "ed061d1aaea36b27" ] ] }, { "id": "c6306e9378b9c1f2", "type": "link out", "z": "f748d0e6cc78a2ba", "g": "124607d308a0f6a6", "name": "", "mode": "link", "links": [ "06327985e9dae780" ], "x": 845, "y": 540, "wires": [] }, { "id": "ed061d1aaea36b27", "type": "uib-cache", "z": "f748d0e6cc78a2ba", "g": "124607d308a0f6a6", "cacheall": false, "cacheKey": "topic", "newcache": true, "num": "4", "storeName": "default", "name": "", "storeContext": "context", "varName": "uib_cache", "x": 440, "y": 480, "wires": [ [ "9c253e4c5651a568", "f9af5b7d2545e9e5" ] ] }, { "id": "2fac9874556f1c88", "type": "inject", "z": "f748d0e6cc78a2ba", "g": "124607d308a0f6a6", "name": "two", "props": [ { "p": "payload" }, { "p": "topic", "vt": "str" } ], "repeat": "", "crontab": "", "once": false, "onceDelay": 0.1, "topic": "two", "payload": "{\"a\":\"Number Two\",\"b\":[\"To B\",\" Or not to B\"]}", "payloadType": "json", "x": 150, "y": 680, "wires": [ [ "c13e434afccaa153" ] ] }, { "id": "4330971395e0a4b9", "type": "inject", "z": "f748d0e6cc78a2ba", "g": "124607d308a0f6a6", "name": "one", "props": [ { "p": "payload" }, { "p": "topic", "vt": "str" } ], "repeat": "", "crontab": "", "once": false, "onceDelay": 0.1, "topic": "one", "payload": "Number One", "payloadType": "str", "x": 150, "y": 640, "wires": [ [ "c13e434afccaa153" ] ] }, { "id": "49d6a6f1bd5358ee", "type": "change", "z": "f748d0e6cc78a2ba", "g": "124607d308a0f6a6", "name": "", "rules": [ { "t": "change", "p": "payload", "pt": "msg", "from": "Number", "fromt": "str", "to": "Some mumber", "tot": "str" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 920, "y": 460, "wires": [ [ "594248fc5dc5f799" ] ], "info": "If you change the uibuilder settings to fwd \r\ninput messages, this function changes an\r\nentry to make certain that the cached variables\r\nare NOT REFERENCES but completely separate\r\nclones. In other words, it makes sure that there\r\nare no unintended consequences of using the\r\ncache." }, { "id": "ac3988907ad3ccaa", "type": "inject", "z": "f748d0e6cc78a2ba", "g": "124607d308a0f6a6", "name": "", "props": [ { "p": "payload" } ], "repeat": "", "crontab": "", "once": false, "onceDelay": 0.1, "topic": "", "payloadType": "str", "x": 605, "y": 540, "wires": [ [ "95d8b757da5c9fd4" ] ], "l": false }, { "id": "95d8b757da5c9fd4", "type": "function", "z": "f748d0e6cc78a2ba", "g": "124607d308a0f6a6", "name": "REPLAY", "func": "\nreturn { \n \"uibuilderCtrl\": \"Gimme something\", \n \"cacheControl\": \"REPLAY\", \n}", "outputs": 1, "noerr": 0, "initialize": "", "finalize": "", "libs": [], "x": 700, "y": 540, "wires": [ [ "fc7585830654783a" ] ] }, { "id": "417119b1765dd5b1", "type": "inject", "z": "f748d0e6cc78a2ba", "g": "124607d308a0f6a6", "name": "", "props": [ { "p": "payload" } ], "repeat": "", "crontab": "", "once": false, "onceDelay": 0.1, "topic": "", "payloadType": "str", "x": 605, "y": 580, "wires": [ [ "309727329638650e" ] ], "l": false }, { "id": "309727329638650e", "type": "function", "z": "f748d0e6cc78a2ba", "g": "124607d308a0f6a6", "name": "CLEAR", "func": "\nreturn { \n \"uibuilderCtrl\": \"Clear me out!\", \n \"cacheControl\": \"CLEAR\", \n}", "outputs": 1, "noerr": 0, "initialize": "", "finalize": "", "libs": [], "x": 700, "y": 580, "wires": [ [ "fc7585830654783a" ] ] }, { "id": "0555cd3fcd3edcfb", "type": "uib-element", "z": "f748d0e6cc78a2ba", "g": "124607d308a0f6a6", "name": "", "topic": "", "elementtype": "ul", "parent": "#more", "parentSource": "", "parentSourceType": "str", "elementid": "topic", "elementId": "", "elementIdSourceType": "msg", "heading": "", "headingSourceType": "str", "headingLevel": "h2", "position": "last", "positionSourceType": "str", "confData": {}, "x": 420, "y": 640, "wires": [ [ "5e202f9e5b6827e6" ] ] }, { "id": "5e202f9e5b6827e6", "type": "link out", "z": "f748d0e6cc78a2ba", "g": "124607d308a0f6a6", "name": "", "mode": "link", "links": [ "06327985e9dae780" ], "x": 535, "y": 640, "wires": [] }, { "id": "c3bdf6f53c48a1e0", "type": "inject", "z": "f748d0e6cc78a2ba", "g": "124607d308a0f6a6", "name": "Toggle Visible Msgs", "props": [ { "p": "_uib", "v": "{\"command\":\"showMsg\",\"prop\":\"body\"}", "vt": "json" }, { "p": "topic", "vt": "str" } ], "repeat": "", "crontab": "", "once": false, "onceDelay": 0.1, "topic": "toggle-visible-messages", "x": 190, "y": 520, "wires": [ [ "ed061d1aaea36b27" ] ], "info": "Change the \"prop\" value to a CSS Selector.\r\n\r\nThe display will appear as the last child of\r\nthat selected element.\r\n\r\ne.g. `body` or `#more`." } ]