Initializing config screen based on new config node

Hey Nick (@knolleary),
The username seems quite easy, but the password content is not clear to me ...

This is the content of the configNode.credentials on the client-side (i.e. in the config screen):

  • When I neither change the username nor the password, then credentials are undefined.

  • When I only change the username to 'xxxx', then the credentials contain only the new username:
    image
    The password is not included, but the boolean shows a password is available (at the server-side).

  • When I change the password to 'xxxx', then the credentials contain only the new password:
    image

  • When I change both username and password, then the credentials contain both values.

  • When I append 'xxxx' to the original password, then the credentials contain a constant __PWDR___ (representing the password which is only known on the server side) combined with my newly added characters:
    image
    Could still manage this one: when I send it to the server, I could replace the constant value by the real password value.

  • But when I replace a few characters of the original password by 'xx', then a part of the constant value will be replaced by my new characters:
    image
    I have no clue how I could determine which part of the real original password is remained. Indeed if I'm not mistaken, the constant value is always __PWDR___, undependent of the length of my real original password. Which is of course great from a security perspective, but not for me ...

I see that other nodes (like mqtt) are also dealing with the constant value, but I don't see at first sight how to handle partial replacements of the original password...

Do you have any other tips in your big magic box?