We are currently using the raw name as the graph ID in the database. The graph name must be separated out to support the rename feature properly. This applies for both graph and sublayers.
This also upsets the user if they want to put spaces or special characters in the name. If the app doesn't directly crash, the user will be upset when they are told the name they want is not accepted, or upset right away to read that there are restrictions.
This should be a random UUID because Firebase does not perform well with autoincremented IDs. I would add a check to prevent collisions however unlikely, but the implementer can choose not to do so by adding a comment. If it does actually collide and the user isn't trying to do so intentionally like checkpointing the browser process, I would be in disbelief at cryptography.
We are currently using the raw name as the graph ID in the database. The graph name must be separated out to support the rename feature properly. This applies for both graph and sublayers.
This also upsets the user if they want to put spaces or special characters in the name. If the app doesn't directly crash, the user will be upset when they are told the name they want is not accepted, or upset right away to read that there are restrictions.
This should be a random UUID because Firebase does not perform well with autoincremented IDs. I would add a check to prevent collisions however unlikely, but the implementer can choose not to do so by adding a comment. If it does actually collide and the user isn't trying to do so intentionally like checkpointing the browser process, I would be in disbelief at cryptography.