Access bound Figma variable names in Template API
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 42/100
- Tipo di issue
- Funzionalità
- Chiarezza
- Specificata chiaramente
- Stato di attività
- Ferma
- Stack tecnologico
- figma, typescript
- Ambito
- developer-experience
Direzione di ricerca
Start by reading the Template API entry points for getString(), getBoolean(), getEnum(), and getInstanceSwap(), then trace how visual properties such as fills and strokes are exposed from a Figma instance. Check existing Template API tests and identify how they verify property access. Done means templates can read a bound variable name for the requested property and the behavior is covered by tests.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Problem
The Template API provides getString(), getBoolean(), getEnum(), getInstanceSwap() — but has no way to read bound Figma variables on visual properties (fills, strokes, text color).
When a component's fill color is set via a Figma variable (e.g. errorColor), the template cannot access that variable name to generate the correct code token.
Use Case
We have a Flutter Badge component where background color is controlled by bound Figma variables. The variable can be any color from our full design system palette — primaryColor, errorColor, successColor, warningColor, and many others. In code, these map directly to theme accessors:
PbBadge(
value: 'Text',
color: context.theme.primaryColor,
)
PbBadge(
value: 'Error',
color: context.theme.errorColor,
)
Currently the template cannot output color: at all — developers must manually look up the correct token.
Proposed API
instance.getBoundVariable('fills') // → "primaryColor"
instance.getBoundVariable('strokes') // → "borderColor"
Template usage (Flutter example):
const fillVar = instance.getBoundVariable('fills');
const colorPart = fillVar ? `\n color: context.theme.${fillVar},` : "";
export default {
example: figma.code`PbBadge(
value: "${value}",${colorPart}
)`,
};
This would generate:
PbBadge(
value: 'TextValue',
color: context.theme.primaryColor,
)
- Lingua principale
- TypeScript
- Stelle
- 1.6k
- Fork
- 126
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Preparare l'ambiente
Questo progetto non fornisce container di sviluppo, Dockerfile né guida per i contributori, quindi l'ambiente è a tuo carico: parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di figma/code-connect
-
normalizePropName strips `#` characters from Figma property names instead of only the `#id` suffixAperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
figma/code-connect#419 ·
-
feature request
Difficoltà 2/5 1-3 ore Idoneità per principianti 66/100
figma/code-connect#403 ·
-
feature request
Difficoltà 5/5 Più di una settimana Idoneità per principianti 38/100
figma/code-connect#414 ·
-
feature request
Difficoltà 4/5 3-5 giorni Idoneità per principianti 48/100
figma/code-connect#413 · 1 commento ·
-
feature request
Difficoltà 4/5 3-5 giorni Idoneità per principianti 54/100
figma/code-connect#412 · 1 commento ·
Tutte le issue di figma/code-connect
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
-
bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
jeanibarz/knowledge-base-mcp-server#1268 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 78/100
Koenkk/zigbee-herdsman-converters#13820 ·
I maintainer di solito rispondono entro 2 giorni
-
A live recovery copy treats a large whole number and text with the same digits as the same valueApertabug sharing & sync
Difficoltà 2/5 1-3 ore Idoneità per principianti 64/100
I maintainer di solito rispondono entro 1 giorno
-
[prefer-expect-resolves] autofix leaves a stray ")" when the awaited expression is parenthesizedAperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
jest-community/eslint-plugin-jest#2052 ·