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

Aberta
#320 4 comentários 3 reações 0 responsáveis Ver no GitHub

Ninguém assumiu esta issue ainda.

Avaliação

Dificuldade
4/5
Tempo estimado
3-5 dias
Facilidade para iniciantes
35/100
Tipo de issue
Funcionalidade
Clareza
Razoavelmente clara
Status de atividade
Estagnada
Stack de tecnologia
figma, typescript

Direção de pesquisa

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.

Escrita pelo modelo de indexação a partir do texto da issue.

Descrição

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)

Linguagem predominante
TypeScript
Estrelas
1.6k
Forks
126
Métricas de merge de PRs
Nenhum PR com merge em 30d

Preparar o ambiente

Este projeto não oferece contêiner de desenvolvimento, Dockerfile nem guia de contribuição, então a configuração fica por sua conta: comece pelo README e veja nosso guia da primeira contribuição para os passos gerais.

Primeiros passos

  1. Leia a issue inteira e depois o guia de contribuição do projeto.
  2. Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
  3. Faça um fork do repositório e trabalhe em uma branch.
  4. Abra um pull request que referencie o número da issue.

Mais de figma/code-connect

Todas as issues de figma/code-connect

Issues semelhantes

Mais issues de TypeScript

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.