Problem
Heurystyka zgadująca typ kontrolki w TokenRow opiera się na fragmentach nazwy tokenu i błędnie klasyfikuje tokeny, które nie są kolorami.
configurator/src/components/inputs/TokenRow.svelte (guessType):
if (n.includes("color") || n.includes("source") || n.includes("-bg") || n.includes("-border")) return "color";
Konkretne błędne klasyfikacje
-border łapie tokeny będące długościami/skrótami, nie kolorami:
--sf-border-width-1..4 (wartości typu 1px — długości),
- shorthandy typu
--sf-icon-box-border (<width> solid <color>).
-bg łapie --sf-surface-bg, który jest kompozytorem tła (shorthand background), nie zwykłym kolorem.
Efekt: w zakładce All Tokens te tokeny dostają color picker, co jest niepoprawnym typem inputu (niezależnie od wartości).
Proponowana poprawka
- Wyprowadzać typ kontrolki z generated metadata /
t.syntax zamiast z heurystyki po podłańcuchu nazwy.
- Jeśli heurystyka ma zostać jako fallback — zawęzić dopasowania (np. wymagać dokładnych sufiksów kolorów, wykluczyć
border-width, surface-bg).
Problem
Heurystyka zgadująca typ kontrolki w
TokenRowopiera się na fragmentach nazwy tokenu i błędnie klasyfikuje tokeny, które nie są kolorami.configurator/src/components/inputs/TokenRow.svelte(guessType):Konkretne błędne klasyfikacje
-borderłapie tokeny będące długościami/skrótami, nie kolorami:--sf-border-width-1..4(wartości typu1px— długości),--sf-icon-box-border(<width> solid <color>).-bgłapie--sf-surface-bg, który jest kompozytorem tła (shorthand background), nie zwykłym kolorem.Efekt: w zakładce All Tokens te tokeny dostają color picker, co jest niepoprawnym typem inputu (niezależnie od wartości).
Proponowana poprawka
t.syntaxzamiast z heurystyki po podłańcuchu nazwy.border-width,surface-bg).