I’m concerned about this shopify-account component from a theme developer perspective.
The biggest issue is that Shopify can change it without prior notice, and there’s no versioning or compatibility guarantee. Because this component often lives in the header, an unexpected change can break a critical part of a theme.
The customization story also feels incomplete. Not everything is exposed in a way theme developers can actually control. For example, the dialog heading font size appears to be hardcoded, with no supported way to change it. The input border color is another example: the focus state can change, but the default border styling doesn’t seem to get changed.
Performance is another concern. This component loads a surprisingly large number of files for what should be a fairly simple piece of UI.
There are also behavioral limitations. As far as I can tell, there’s no documented way to programmatically open the account sheet. That becomes a real problem in themes where the account entry point may need to appear in more than one place. I also haven’t found a documented way to control the dialog backdrop or other parts of the component.
Overall, this feels like something that was validated primarily against Shopify’s first-party Horizon theme, but not fully designed for the broader ecosystem of third-party themes with different structures and design systems.
Why not provide a Liquid-based way to output the underlying account links and states, and let theme developers implement the UI in a way that fits their theme? If Shopify wants to offer a component as an option, that’s fine, but forcing a largely opaque web component into themes without full styling and behavioral control creates a lot of friction.