Ah, thanks for providing some details. I believe that what you describe is different from what I imagined. If you look at the TimePlotRaw widget it really has 2 inputs: options and data. The options are a JSON data structure that describes the series to plot, the axes, etc. The data is just the raw data.
So something needs to send this widget a well-formed options JSON. I wrote a TimePlot (no "Raw") widget that uses the FlexDash input configuration to set some of the options: labels, axes min/max, some colors, etc. Internally it constructs the options JSON and passes it to a TimePlotRaw widget. I could have just as well written a TimePlotNode, i.e., a Node-RED node, that presents the same kind of configuration of labels, axes, etc in NR and then outputs the JSON that can be sent to a FlexDash TimePlotRaw widget.
So if you look at one of your nodes, do you generate angular html on-the-fly as the user changes settings, or do the settings just translate into a message that you send to the front-end angular code? If it's the latter, then that's really not that different from the TimePlot stuff... Maybe you can point me at a sample UI node of yours to look at?