How to transform string values from Figma before passing them to `example`?

Ouverte
#320 4 commentaires 3 réactions 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

Évaluation

Difficulté
4/5
Temps estimé
3-5 jours
Accessibilité débutants
35/100
Type d'issue
Fonctionnalité
Clarté
Plutôt claire
Activité
À l'abandon
Stack technique
figma, typescript

Piste de recherche

Start by reading the Code Connect documentation and the prop mapping behavior around figma.string and example; the issue provides a reproduction using an Errors component that expects a string array. Determine whether transforming mapped values is supported or needs a new API, then confirm the expected generated output for the reproduction. Done means the supported path is documented or the limitation and roadmap status are clarified.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Description

API question

Is there a way to perform operations on the prop values coming from Figma, before they're passed to example?

My scenario is as follows:

  • We have an Errors component that accepts an array of error messages (as strings), ie. <Errors errors={['Error 1', 'Error 2']} />
  • The design component in Figma has a single text property, where the error messages are specified

Currently I have the following in my Code Connect file:

import figma from '@figma/code-connect';

import { Errors } from 'src/components';

figma.connect(
  Errors,
  '[redacted]',
  {
    props: {
      errors: figma.string('text'), // I'd like to transform this to an array, ie. `[figma.string('text')]`
    },
    example: ({ errors }) => <Errors errors={errors} />,
  },
);

Since the Errors component only accepts an array of strings, and not a single string, the above doesn't work. I need to be able to put figma.string('text') into an array, however nothing I tried seems to work.

If I do the following, then Figma renders it as-is, without using the actual value of errors:

example: ({ errors }) => <Errors errors={[errors]} />,

And if I try putting figma.string('text') into an array before passing it to example, then I get <Errors errors={[undefined]} /> output in Figma.

Is there a way to accomplish this? If not currently, is this something that is on the roadmap? Not being able to perform operations on the values coming from Figma is pretty limiting IMO.

Code Connect version: 1.3.5
OS: MacOS 26 (Tahoe)

Langage dominant
TypeScript
Étoiles
1.6k
Forks
126
Métriques de merge des PR
Aucune PR mergée en 30 j

Préparer son environnement

Ce projet ne fournit ni conteneur de développement, ni Dockerfile, ni guide de contribution : l'installation est à votre charge. Commencez par son README, et consultez notre guide de la première contribution pour les étapes générales.

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Autres issues de figma/code-connect

Toutes les issues de figma/code-connect

Issues similaires

Plus d'issues TypeScript

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.