• color as text on every one of surfaces: unchanged when it already reads at min against each, else stepped toward pole by the least amount that does. The least, so a dim role stays as dim as the rule allows and keeps its place below the brighter ones. A pole that cannot reach min gives the pole itself, the most any colour could do on those surfaces.

    Parameters

    • color: string
    • surfaces: readonly string[]
    • pole: string
    • min: number = TEXT_CONTRAST

    Returns string