The Problem
When using the Divider
component in Shopify UI Extensions with different size variants, only the size="small"
variant renders correctly. All other size variants (base
, large
, extraLarge
) appear to have 0px height and are effectively invisible.
Code to Reproduce
import { View, TextBlock, Divider } from '@shopify/ui-extensions-react/customer-account';
function MyExtension() {
return (
<>
<View>
<TextBlock>Size small</TextBlock>
<Divider size="small" />
</View>
<View>
<TextBlock>Size base</TextBlock>
<Divider size="base" />
</View>
<View>
<TextBlock>Size large</TextBlock>
<Divider size="large" />
</View>
<View>
<TextBlock>Size extra large</TextBlock>
<Divider size="extraLarge" />
</View>
</>
);
}
Expected Behavior
All divider variants should render with their respective heights:
size="small"
- Thin divider linesize="base"
- Default/medium divider linesize="large"
- Thicker divider linesize="extraLarge"
- Thickest divider line
Actual Behavior
size="small"
renders correctlysize="base"
has 0px height (invisible)size="large"
has 0px height (invisible)size="extraLarge"
has 0px height (invisible)
Investigation
The issue appears to be missing CSS styles for the larger divider variants. When inspecting the DOM, the divider elements are present but lack the proper height/styling that would make them visible.
Environment
- Extension Type: Customer Account UI Extension
- Package:
@shopify/ui-extensions-react
- Component:
Divider
- Context: All customer account extension surfaces
Impact
This bug prevents proper visual separation in UI extensions, forcing developers to either:
- Use only the
small
variant (limiting design options) - Implement custom divider solutions (inconsistent with Shopify’s design system)
- Use workarounds like empty
View
components with border styles
Request
Please investigate and fix the missing styles for Divider
size variants base
, large
, and extraLarge
in UI Extensions. This should be a straightforward CSS fix to ensure all documented size variants work as expected.
Having consistent divider styling is essential for building professional-looking extensions that align with Shopify’s design system.