flippedSwatch function

ColorSwatch<int> flippedSwatch(
  1. ColorSwatch<int> swatch
)

Espelha um swatch: o valor do stop mais claro vai para o mais escuro.

É como a rampa neutra ESCURA de uma marca se obtém da clara. O tema espera de toda rampa neutra a mesma semântica — s50 é o fundo, s900 é o conteúdo — e no escuro isso significa que o s50 precisa ser o tom mais escuro. Refletir a rampa mantém essa semântica sem duplicar a escolha de cor: uma semente gera as duas pontas.

O value do resultado é o do swatch de origem, ou seja, a semente sobrevive ao espelhamento — é o que permite a uma marca gerada por semente continuar se descrevendo pela semente depois de refletida.

Implementation

ColorSwatch<int> flippedSwatch(ColorSwatch<int> swatch) =>
    ColorSwatch<int>(swatch.toARGB32(), <int, Color>{
      for (int i = 0; i < kSwatchStops.length; i++)
        kSwatchStops[i]: swatch[kSwatchStops[kSwatchStops.length - 1 - i]]!,
    });