If I set that views custom prop access mode to private and I load 10,000 objects, the view is totally fine. However if it's public and I load 10,000 objects, then it functionally seems to be a bit slower.
However I wanted to check that I am following the right path here and not chasing rabbits
Am I understanding the use-case of private custom view props correctly?
Private means the frontend has no knowledge of the property, and therefore no synchronization needs to happen between the front and backend - therefore, the frontend is doing less work. There's no mounting to the DOM if it's just a property tree element in custom, but it's still a lot of garbage for JS to churn over.
Any large view custom props could likely be private, as long as there are no components that are expected to interact with them with pure JS interactions?
Like, in what example would I not want view custom props to be private?
Everything I am testing with them seems to work fine even with them private.
i.e.: two toggle switches bound to view.custom.example which is a private boolean.
One of those toggle switches is bidirectional, the other is not. The bidirectional one is changing the state of view.custom.example even though it's a JS based action and not a python script?
Edit: The more I have thought about this, the more confused I am. When would someone ever want them to be public unless they were writing browser extensions for Perspective?
There's basically no cases where a custom prop shouldn't be made private, and it'll probably eventually be the default state for them. Offline mode may complicate that a little bit, eventually, but yeah, basically, there's no way to interact with custom props on the frontend outside of JS injection or a custom frontend component, so there's no harm in making them private.