מה הם משתני Figma?
משתני Figma הם ערכים בעלי שם שנשמרים בתוך קובץ Figma עבור צבעים, מספרים, מחרוזות וערכים בוליאניים, עם מצבים למקרים כמו ערכה בהירה וכהה. הם הצורה המובנית של טוקני עיצוב ב-Figma, אבל קריאה שלהם דרך ה-API של Figma דורשת מנוי Enterprise.
מה הם עושים
משתנים מאפשרים לקובץ Figma להחזיק ערכים בעלי שם במקום לחזור על ערכים גולמיים. נתמכים ארבעה טיפוסים: צבע, מספר, מחרוזת וערך בוליאני.
אפשר לארגן אותם באוספים, ולכל אוסף יכולים להיות מצבים - לרוב בהיר וכהה, אבל גם צפיפות, מותג או פלטפורמה. שכבה שקשורה למשתנה מתעדכנת כשהמצב משתנה, וזה מה שגורם לערכות נושא בתוך Figma לעבוד כמו שצריך.
משתנים יכולים גם להיות כינוי למשתנים אחרים, וכך בונים שכבה סמנטית: text/danger שמצביע על red/600.
איפה הקושי
משתנים פותרים את הבעיה בתוך Figma. הבעיה מחוץ לו נשארת פתוחה, וכאן צוותים מופתעים.
קריאת משתנים דרך ה-REST API של Figma דורשת תוכנית Enterprise. נקודת הקצה קיימת, והיא מחזירה 403 בתוכניות Professional ו-Organization.
ההשלכה המעשית משמעותית בהערכת כלים. כל דבר שמבטיח סנכרון טוקנים מ-Figma דרך ה-REST API עובד על חשבון Enterprise ולא עושה שום דבר בתוכנית שיש לרוב הצוותים. כדאי לשאול על זה ישירות לפני רכישה, כי בדרך כלל זה לא מופיע בחומרי השיווק.
תוספים לא מושפעים. ה-API של התוספים קורא משתנים מתוך הקובץ, ותוסף רץ בכל תוכנית. כלי שאמצעי ההעברה שלו הוא תוסף עובד ללא קשר לרמת ה-Figma שלכם.
משתנים וטוקני עיצוב
משתני Figma הם צורה של טוקני עיצוב, מוגבלת ל-Figma. בפני עצמם הם אינם ניידים: אין ייצוא מובנה ל-CSS, ל-Tailwind או לפורמט ה-JSON של הטוקנים מטעם ה-W3C.
לגשר על הפער הזה זה בדיוק מה שכלי טוקנים נועדו לו. הבחירה היא בין תוסף, שעובד בכל מקום, לבין ה-REST API, שלא.
איפה Flash DSM נכנס
Flash DSM משתמש בתוסף Figma כאמצעי ההעברה בדיוק מהסיבה הזאת. הוא קורא משתנים בכל תוכנית של Figma, הופך פרסום ל-diff טוקנים שניתן לסקור, ומייצא ל-CSS, ל-Tailwind, ל-Tokens Studio JSON או ל-pull request ב-GitHub.