Hi @tve,
Then I have misinterpreted this until now. Because in the original discussion you wrote:
You insert data into a data structure (a tree) on the Node-RED side. That is reflected to a tree in the front-end. A widget is then configured to look at specific nodes in that tree to get its values. The configuration itself is also in that tree
So I thought that your tree contained 3 types of information:
-
The static config, which is entered manually by the user in the fd nodes config screens and then deployed by clicking on the 'Deploy' button.
-
The dynamic config, which is the static config that is overwritten by params via input messages.
-
The data, i.e. the state of what you want to display.
I understood that this way you can avoid having to replay messages, and you are still able to sync multiple clients even after a browser window refresh.
But now it is not clear to me anymore which of those 3 types of information are inside your tree, and which of those needs to be persisted? Your static config is already persisted in the flow.json file via the node properties.
And why do you want to persist that entire tree, while you static config is already persisted? To make sure that the dynamic config and the data survive a restart and redeploy?
Isn't that a problem when you make changes in the config screen, and deploy those changes? Because if your tree also contains the static and dynamic config, that might be obsolete and conflict with the new static config in the node?
Would be nice if you could explain this a bit, so I can follow again after a long hard day at work...
Thanks!