I can create schemes from the palette colors in JSON but once they are unmapped, merchants have no way to remap the values. It’s a confusing first-run experience, just clicking around and learning how it works destroys the initial state and there is no way to recreate it.
Additional nitpick: pressing the little “plus” button picks a random color. Not just a random selection from “recently used” but a fully random color.
What I want to add when I press that button is so easy to guess. It’s “my most common color that isn’t already a variable”. In other words: the existing hex values, ranked by count, excluding values in the palette. So every time a merchant presses + they get a value that probably should be a variable but isn’t.
It might be slow to calculate all that. It’s definitely faster than manually clicking around a site to guess at which values should be variables instead of one-offs.
It should at least populate from the values in recently used. Just adding random colors is madness.
We’re aware that pressing the plus (+) button selects a random colour. We’re looking at making changes to this, but I don’t have a guarantee or timeline to share. Thanks for sharing your feedback and I’ve shared it internally.
I’ll follow up in this thread as soon as I have more information to share.
It’s not a particularly important feature but from the context of developing themes with a large existing userbase I have to make a decision about where and how I populate these defaults for updating merchants.
There’s a little magic trick I could do where they are set in the “preset” but not the “current_settings”.
The UX for new customers would be “a bunch of palette colors set up that match the demo, great”
The UX for existing customers would be “no palette colors set unless you reset to a preset, because we don’t want to assume your colors”
If the theme editor picked sane defaults for the existing customers, they could just keep pressing + and watch their palette materialize. Perfect UX for everyone.
Anyways that would be neat. It’s not particularly important in the grand scheme.