✨ FlexDash alpha release - round 3

Can you update again? You should be getting node-red-flexdash 0.4.154 and then node-red-vue 0.1.15 as a dependency.
Thanks for flagging this!!

1 Like

All good now, thanks for the quick response :+1:

1 Like

We'd prefer if you followed our naming guidelines and didn't publish modules with the node-red- prefix that didn't make clear they are a contrib package. Particularly if you're going to go with such a generic name like that.

Oh, I had forgotten the specifics, I'll add a scope with the next release...

@tve I realise how valuable log entries are, especially in the early stages of a node's development, but as flexdash moves from alpha to beta, could you kindly consider cutting down the logging to the node-RED log, as it produces pages of information at start-up, making it difficult to spot other non-flexdash error/issue log entries.
We had a similar situation with node-red-contrib-google-smarthome and it was overcome by having a checkbox in the node config to enable/disable logging, which allows users to enable verbose logging if they had any issues, otherwise keep it disabled.

For consideration...

debug

3 Likes

Man, I can't wait to get back to some of my Node-Red projects to have an opportunity to try out FlexDash.

1 Like

I look forward to welcoming you to the club :rofl:

I'm currently trying to get my greenhouse watering controls implemented with FlexDash, as well as polishing the Motus station software (world-wide bird migration tracking) which also use FlexDash...
Can't wait to work on FD itself again, time to add a last feature and then move on to a hopefully short beta and 1.0 release. I already have 1.1 planned, aka full rewrite, but fully compatible... :laughing:

Makes total sense, thanks for bringing it up!

1 Like

I didn't succeed using the custom widget as array. It works flawless without, but disapeares when defined as array.

[
    {
        "id": "62a03b0578e1991f",
        "type": "tab",
        "label": "Flow 1",
        "disabled": false,
        "info": "",
        "env": []
    },
    {
        "id": "9e00f73ed906e7a7",
        "type": "inject",
        "z": "62a03b0578e1991f",
        "name": "",
        "props": [
            {
                "p": "payload"
            },
            {
                "p": "title",
                "v": "SSROut",
                "vt": "str"
            },
            {
                "p": "label",
                "v": "off",
                "vt": "str"
            }
        ],
        "repeat": "",
        "crontab": "",
        "once": false,
        "onceDelay": 0.1,
        "topic": "",
        "payload": "0",
        "payloadType": "num",
        "x": 200,
        "y": 150,
        "wires": [
            [
                "f5470e30cfff160e"
            ]
        ]
    },
    {
        "id": "7ad6d551fcbeaf32",
        "type": "inject",
        "z": "62a03b0578e1991f",
        "name": "",
        "props": [
            {
                "p": "payload"
            }
        ],
        "repeat": "",
        "crontab": "",
        "once": false,
        "onceDelay": 0.1,
        "topic": "",
        "payload": "1",
        "payloadType": "num",
        "x": 200,
        "y": 195,
        "wires": [
            [
                "c26a2c4778e7d07e"
            ]
        ]
    },
    {
        "id": "48feeb03597e2f0c",
        "type": "flexdash custom",
        "z": "62a03b0578e1991f",
        "name": "Led",
        "title": "LED",
        "sfc_source": "<template>\r\n    <!-- For classes see the entire styles section of https://next.vuetifyjs.com/en/styles/border-radius/ -->\r\n    <div class=\"flex-grow-1 w-100 pa-2 d-flex flex-row align-center justify-space-around\">\r\n        <div>{{ label }}</div>\r\n        <div :class=\"`led bg-${color}`\" />\r\n    </div>\r\n</template>\r\n\r\n<style scoped>\r\n    div.led {\r\n        height: 80%;\r\n        aspect-ratio: 1;\r\n        width: min-content;\r\n        border-radius: 50%;\r\n        box-shadow: 0px 0px 15px 0px v-bind(color), rgba(0, 0, 0, 0.17) 0px -3px 2.5px 0px inset, rgba(0, 0, 0, 0.15) 0px -5px 4px 0px inset, rgba(0, 0, 0,\r\n                0.1) 0px -11px 5px 0px inset;\r\n    }\r\n</style>\r\n\r\n<script>\r\n    export default {\r\n    props: {\r\n        payload: { default: undefined }, // type is \"any\"\r\n        label: { default: \"state\", type: String }\r\n    },\r\n    computed: {\r\n        color() {\r\n            // use any material-design color: https://vuetifyjs.com/en/styles/colors/#material-colors\r\n            // (warning, it's link to the old docs 'cause that page is broken in the new ones...)\r\n            if (this.payload == 0) return \"green\"\r\n            else if (this.payload == null) return \"grey\" // null or undefined\r\n            else return \"red\"\r\n        }\r\n    }\r\n}\r\n</script>",
        "fd_container": "a96ede31d15e8fcc",
        "fd_cols": 1,
        "fd_rows": 1,
        "fd_array": true,
        "fd_array_max": 10,
        "x": 525,
        "y": 195,
        "wires": [
            []
        ]
    },
    {
        "id": "17c70a1589f45f67",
        "type": "inject",
        "z": "62a03b0578e1991f",
        "name": "",
        "props": [
            {
                "p": "label",
                "v": "sce",
                "vt": "str"
            }
        ],
        "repeat": "",
        "crontab": "",
        "once": false,
        "onceDelay": 0.1,
        "topic": "",
        "x": 200,
        "y": 245,
        "wires": [
            [
                "b5e12c1521237afa"
            ]
        ]
    },
    {
        "id": "f5470e30cfff160e",
        "type": "function",
        "z": "62a03b0578e1991f",
        "name": "makeArray",
        "func": "msg.payload = [msg.payload, msg.payload];\nmsg.topic   = [msg.topic, msg.topic + \"sce\"];\nreturn msg;",
        "outputs": 1,
        "noerr": 0,
        "initialize": "",
        "finalize": "",
        "libs": [],
        "x": 350,
        "y": 150,
        "wires": [
            [
                "48feeb03597e2f0c"
            ]
        ]
    },
    {
        "id": "c26a2c4778e7d07e",
        "type": "function",
        "z": "62a03b0578e1991f",
        "name": "makeArray",
        "func": "msg.payload = [msg.payload, msg.payload];\nmsg.topic   = [msg.topic, msg.topic + \"sce\"];\nreturn msg;",
        "outputs": 1,
        "noerr": 0,
        "initialize": "",
        "finalize": "",
        "libs": [],
        "x": 350,
        "y": 195,
        "wires": [
            [
                "48feeb03597e2f0c"
            ]
        ]
    },
    {
        "id": "b5e12c1521237afa",
        "type": "function",
        "z": "62a03b0578e1991f",
        "name": "makeArray",
        "func": "msg.payload = [msg.payload, msg.payload];\nmsg.topic   = [msg.topic, msg.topic + \"sce\"];\nreturn msg;",
        "outputs": 1,
        "noerr": 0,
        "initialize": "",
        "finalize": "",
        "libs": [],
        "x": 350,
        "y": 245,
        "wires": [
            [
                "48feeb03597e2f0c"
            ]
        ]
    },
    {
        "id": "a96ede31d15e8fcc",
        "type": "flexdash container",
        "name": "Repro",
        "title": "",
        "kind": "StdGrid",
        "fd_children": ",48feeb03597e2f0c",
        "tab": "1e908252f3517797",
        "min_cols": "6",
        "max_cols": "20",
        "unicast": "ignore",
        "parent": "",
        "solid": false,
        "cols": "1",
        "rows": "1"
    },
    {
        "id": "1e908252f3517797",
        "type": "flexdash tab",
        "name": "Repros",
        "icon": "mdi-view-dashboard",
        "title": "Repro",
        "fd_children": ",a96ede31d15e8fcc",
        "fd": "26bf919f14de42c9"
    }
]

What am I doing wrong? Claus

1 Like

I wonder what I am doing wrong... :laughing:

The dynamic loading stuff that the custom widget uses needs a full rewrite, now that I understand things better. I'll take a look, but it may not be practical to make custom widgets work in an array. TBD.

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.