sheengemologic ui
All components

Surface

Semantic surface with role padding and an inherited focus-ring offset.@gemologic/sheen · surfaces

Playground

<Surface variant="raised" padding="md" bordered={false} elevated={false} padding="none" variant="base"><Input label="Name" /></Surface>

Variant matrix

Surface composition
variant: base
variant: subtle
variant: raised
variant: inset
padding: none
padding: xs
padding: sm
padding: md
padding: lg
padding: xl

Anatomy

Package
@gemologic/sheen
Source
packages/ui/src/primitives/Surface.tsx
Tokens
  • --sheen-color-bg-raised
  • --sheen-color-border
  • --sheen-color-focus-ring-offset

Accessibility

Role: generic surfaceKeyboard: No component-owned keys

Do

  • Use role tokens and preserve the surrounding keyboard order.

Do not

  • Do not add structural borders or shadows merely as decoration.

Generated props

NameTypeDefaultDescription
variant"base" | "subtle" | "raised" | "inset" | undefinedbaseSemantic surface fill; also establishes the focus-ring offset for descendants.
paddingSpacingnoneRole-based padding; none leaves spacing to the composition.
borderedbooleanfalseAdds a structural border, not an interactive-control boundary.
elevatedbooleanfalseOpt-in raised shadow. Keep elevation sparse.
Native Solid/HTML attributes remain available and are omitted from this authored-prop view.