Skip to main content

Module shape

Module shape 

Source
Expand description

ShapeScale::neutral: the design-language-free 10 corner-radius tokens (post-Expressive scale shape).

This crate constructs no other ShapeScale — a design system builds its own from its own plugin crate (frust-material’s tokens module carries the Material 3 corner-radius scale these numbers originate from, source cited there; frust-cupertino’s carries the iOS-idiom mapping). The values below are the M3 numbers reused verbatim: a corner-radius scale isn’t a branded artifact the way a color palette is, so there’s no design-language-specific value here to invent (see crate::theme::Theme::neutral’s module docs).

Source: https://m3.material.io/styles/shape/corner-radius-scale (verified 2026-07-17; the pre-Expressive scale had 7 tokens, not 10). Radii are dp, treated 1:1 as logical px, matching this crate’s other length fields.

Structs§

ShapeScale
The 10 Material 3 corner-radius tokens, dp (logical px). full is represented as f64::INFINITY rather than a separate enum variant — resolve it against a concrete box size with ShapeScale::resolve, which clamps an infinite radius to half the box’s shorter side (a pill shape) and passes any finite radius through unchanged.