tokens library
Design tokens do Flocks (cores, tipografia, espaçamentos, raios, etc.).
Classes
- AppColors
- A class that contains the color palette for the App.
- AppCurves
- Tokens de curva de animação do Flocks.
- AppDurations
- Tokens de duração de animação do Flocks.
- AppElevation
- Sombras de elevação do Flocks — simétricas (offset zero): puro efeito de elevação, distribuído igualmente em todos os lados.
- AppFontFamilies
- As famílias tipográficas empacotadas com o Flocks.
- AppGlass
- Tokens numéricos do tratamento glass (frosted / "Liquid Glass" nível 1) do Flocks.
- AppIcons
- O catálogo de ícones da JotaPe — ~880 slugs.
- AppIllustrations
- O catálogo de ilustrações da JotaPe — 12 slugs.
- AppRadius
- A class that defines the radius values used in the App.
- AppSizes
- A class that contains the sizes used in the App.
- AppSpacings
- A class that contains the spacings used in the App.
- AppStrokes
- Stroke width tokens for App.
- AppTextStyles
- A class that contains the text styles for the App.
Enums
- AppDevice
- Breakpoints de dispositivo do design system.
- AppFieldSize
-
Tamanho de um campo de formulário do Flocks (
AppInput, dropdowns, pickers, color picker). Espelha a mecânica deAppButtonSize: uma altura fixa por tamanho + métricas internas (padding/ícone), para os campos casarem com os botões nas mesmas linhas de formulário. - AppRadiusMode
- Eixo global de forma dos cantos do Flocks.
- AppStyle
- Eixo global de estilo de container do Flocks.
- WcagLevel
- Nível de conformidade WCAG.
- WcagTextSize
- Tamanho de texto para fins de contraste WCAG.
Extension Types
- AppIconToken
- O contrato de ícone do Flocks: os nomes que o pacote garante existir.
- AppIllustrationToken
- O contrato de ilustração do Flocks: o que o pacote garante desenhar.
Extensions
- AppColorOpacity on Color
- An extension on Color that provides additional functionality.
- AppColorSwatch on ColorSwatch
- An extension on ColorSwatch that provides convenient getters for accessing different shades of a color.
- AppTypographyColors on TextStyle
Constants
- kAaaLarge → const double
- AAA para texto grande: 4.5:1.
- kAaaNormal → const double
- AAA para texto normal: 7:1.
- kAaLarge → const double
- AA para texto grande (≥ 18pt, ou ≥ 14pt bold): 3:1.
- kAaNormal → const double
- AA para texto normal (< 18pt, ou < 14pt bold): 4.5:1.
- kDarkSurfaceToneMax → const double
- Tom HCT máximo da superfície base no tema escuro (mantém o "escuro").
- kDarkSurfaceToneMin → const double
- Tom HCT mínimo da superfície base no tema escuro. Abaixo disso a superfície é ~preto puro → halation e elevação (por clareamento) fica impossível.
- kDisabledChromaRetention → const double
- Fração do croma preservada no estado desabilitado (dessatura o disabled).
- kDisabledDistinctionTone → const double
- ΔT mínimo entre a versão habilitada e a desabilitada de um elemento — garante que dá para perceber que está desabilitado.
- kDisabledIndicatorRetention → const double
- Fração que o indicador desabilitado (check/ponto/thumb) recua da sua on-color em direção ao tom do fill. Pequena de propósito: o indicador precisa ficar claro sobre fill escuro (e vice-versa) para não sumir — só um pouco mais apagado que o habilitado.
- kDisabledMinRatio → const double
-
Razão mínima de um elemento desabilitado vs
surface. A WCAG isenta controles inativos, mas o Flocks exige um piso de perceptibilidade para o disabled não sumir. - kDisabledProminenceTone → const double
-
Deslocamento de tom (ΔT vs
surface) de um elemento desabilitado. - kMinSeparationDark → const double
- Separação mínima de tom no tema escuro — 2× a do claro (kMinSeparationLight). No escuro a luz é "absorvida" e o WCAG 2 superestima o contraste, então uma separação que basta no claro fica imperceptível no escuro. Dobrar o ΔT é a regra prática.
- kMinSeparationLight → const double
- Separação mínima de tom (ΔT) entre superfícies/containers adjacentes no tema claro (ex.: card sobre o fundo).
- kToneDeltaLargeUi → const double
- ΔT de tom HCT que garante razão ≥ 3.0 — equivalente de kAaLarge / kUi.
- kToneDeltaText → const double
- ΔT de tom HCT que garante razão ≥ 4.5 — equivalente perceptual de kAaNormal.
- kUi → const double
- AA para componentes de UI, ícones, bordas, anéis de foco e gráficos: 3:1.
- package → const String
Functions
-
colorToHex(
Color color) → String -
Converte um Color em string hex
'#RRGGBB'(maiúsculo, sem alpha). -
contrastRatio(
Color a, Color b) → double -
Razão de contraste WCAG entre
aeb(1.0 a 21.0). -
disabledIndicatorOn(
Color container) → Color -
Cor do indicador desabilitado (check/ponto/thumb) sobre
container. -
elevatedSurface(
Color surface, {required bool isDark, required double deltaTone}) → Color -
Deriva uma superfície elevada (card/sheet/popover) a partir de
surfacedeslocando o tom HCT pordeltaTone, preservando matiz e croma (fica on-brand). No escuro (isDark) a elevação clareia; no claro, escurece — "elevação por clareamento" no dark (ver COLOR_ACCESSIBILITY_RULES §4). -
hctTone(
Color color) → double -
Tom HCT (T, 0–100) de
color— lightness perceptual (o L* de CIELAB). -
meetsWcag(
Color fg, Color bg, {WcagTextSize size = WcagTextSize.normal, WcagLevel level = WcagLevel.aa}) → bool -
truesefgsobrebgatinge o alvo WCAG desize/level. -
mostSeparatedStop(
ColorSwatch< int> swatch, {required List<Color> surfaces, required Color content, double minSeparation = 5.0, double minContentRatio = kAaNormal, List<int> candidates = const <int>[50, 100, 200, 300, 400, 500, 600, 700, 800, 900]}) → Color -
Escolhe, dentro de
swatch, o preenchimento mais suave que ainda se distingue de todas as superfícies emsurfacese mantémcontentlegível. -
mutedForDisabled(
Color content, Color surface) → Color -
Versão desabilitada de
contentsobresurface: dessatura (kDisabledChromaRetention) e desloca o tom paratomDaSurface ±kDisabledProminenceTone no sentido da cor original. -
neutralSwatchFromSeed(
Color seed) → ColorSwatch< int> - Gera a rampa neutra de uma marca a partir de uma semente.
-
onColorFor(
Color background) → Color -
Retorna preto ou branco — o que tiver maior contraste sobre
background. Usado para garantir on-colors legíveis por marca/brilho. -
parseHexColor(
String? hex) → Color? -
Converte uma string hex (
'#RRGGBB','#RRGGBBAA'ou sem'#') em Color. -
parseHexColorOr(
String? hex, Color fallback) → Color -
Igual a parseHexColor, mas retorna
fallbackquando a string é inválida. -
readableStopOn(
ColorSwatch< int> swatch, Color background, {double minRatio = 3.0}) → Color -
Escolhe, dentro de
swatch, o stop com contraste ≥minRatiosobrebackground— para usar uma cor de marca/semântica como elemento de UI (borda, ícone, texto de acento) sobre uma superfície, garantindo ≥ 3:1 (COLOR_ACCESSIBILITY_RULES §5). Em fundo claro varre preferindo stops escuros; em fundo escuro, stops claros. Cai no stop de maior contraste se nenhum atingir o alvo (torna a falha visível em teste, sem sumir). -
swatchFromSeed(
Color seed) → ColorSwatch< int> - Gera um ColorSwatch de 11 stops (50–950) a partir de uma cor-seed usando HCT tone (perceptualmente uniforme).
-
toneDelta(
Color a, Color b) → double -
Diferença absoluta de tom HCT entre
aeb(0–100). -
wcagMinRatio(
WcagTextSize size, WcagLevel level) → double -
Razão de contraste mínima exigida para
sizenolevel.