Customer Info Forms and More Info There's a bit extra info I wanted about users, so since I was doing this anyway I figured I may as well port the existing forms to the new form renderer. Then, in order to fit within the guidelines I needed subforms, so partials were added.
Move CustomerFwd behind Customer All the previously-lazy BackendSgx data is now either all loaded or all not loaded by swapping the sgx_repo used by your CustomerRepo instance. When not loaded the fields are filled with bottom values that explode when used. When loaded the values are present in RAM and not promises at all. Most code paths do not need any of the data, a few need most of it, so this seems like a good trade-off. Most code using this object will simply never touch those fields or care about how they are loaded, etc. Of course, most of this data isn't even SGX related and should move out of here, but that would take a data model refactor/migration on the catapult_* schema.
Customer Info This should allow us, the admins, to query information about a customer without having to dive in and run a couple redis queries and some database queries before getting the full picture of who we're talking to. It also allows the users to request some data about themselves. Balance and phone number are already visible in other places, but their expiry is currently not, and people have been asking about it.