ToneDeltaPair
Documents a constraint between two DynamicColors, in which their tones must have a certain distance from each other.
Prefer a DynamicColor with a background, this is for special cases when designers want tonal distance, literally contrast, between two colors that don't have a background / foreground relationship or a contrast guarantee.
Documents a constraint in tone distance between two DynamicColors.
The polarity is an adjective that describes "A", compared to "B".
For instance, ToneDeltaPair(A, B, 15, 'darker', stayTogether) states that A's tone should be at least 15 darker than B's.
'relative_darker' and 'relative_lighter' describes the tone adjustment relative to the surface color trend (white in light mode; black in dark mode). For instance, ToneDeltaPair(A, B, 10, 'relative_lighter', 'farther') states that A should be at least 10 lighter than B in light mode, and at least 10 darker than B in dark mode.
Parameters
The first role in a pair.
The second role in a pair.
Required difference between tones. Absolute value, negative values have undefined behavior.
The relative relation between tones of roleA and roleB, as described above.
Whether these two roles should stay on the same side of the "awkward zone" (T50-59). This is necessary for certain cases where one role has two backgrounds.
How to fulfill a tone delta pair constraint.