I'm trying to create some components using an input property of type "record" so that I can extend it as needed without needing to add a new input property for every individual item. While this does work, it has an undesired side effect, and I'm not sure if its a bug or intended.
In my example, I created a component, added an input record, and defined a default value of:
{foo: "foo", bar: "bar"}

Then I went back to my main screen, added the component, and changed the input to:
{foo: "foo1", bar: "bar1"}

As you can see, the component on the main screen reflects the custom input. Then I went back to the component to add a new sub-property:
{foo: "foo", bar: "bar", zzz: "zzz"}

Unfortunately, it seems as though since the input record definition has changed, it went and reset the input from the main screen using this component.

Interestingly enough, if you're not adding sub-properties to the default input record on the component, but rather only changing the already defined sub-properties, it doesn't go back and reset any of the component references on the screens. However, this kind of defeats the purpose of using an input record to be able to extend the component without needing to add additional inputs. The "Raise OnReset when value changes" flag doesn't seem to make a difference here either way.
Has anyone else noticed this? Is there something simple I'm missing? Any thoughts on a workaround?
Thank you in advance!