Support tsconfig `paths` in Template API imports (.figma.ts)

Ouverte
#408 3 commentaires 0 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
48/100
Type d'issue
Fonctionnalité
Clarté
Plutôt claire
Activité
Calme
Domaine
tooling

Piste de recherche

Start by reading raw_template_bundler.ts and the bundleTemplateWithHelpers function mentioned in the issue, then trace how figma.config.json settings reach the esbuild call. Check the existing template import handling and tests for bundling or path aliases. Done means .figma.ts templates can resolve aliases configured with paths and publish without the relative-import error.

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

Description

API question

Please provide:

  • Code Connect CLI version: 2.0.0
  • Operating system: MacOS
  • Code Connect file, Figma design and/or relevant code snippet that could help us get more context
    • If you prefer not to share those publicly please reach out via the Figma support
Problem

Alias imports in .figma.ts fail during publish, even with paths set per docs.

And looking at the source, in raw_template_bundler.ts the bundleTemplateWithHelpers function passes an empty value for the tsconfig.json settings during the esbuild build, and it doesn't seem to specifically consume the paths field added in figma.config.json. I'm not sure if I've pinpointed this correctly, but is there a specific reason this decision was made?

Infos

figma.config.json:

{
    "$schema": "https://raw.githubusercontent.com/figma/code-connect/main/schemas/figma.config.schema.json",
    "codeConnect": {
        "parser": "react",
        "label": "TEST",
        "language": "typescript",
        "include": ["src/**/*.figma.ts"],
        "paths": {
            "~/*": ["./src/*"]
        }
    },
    "fileKey": "he4tiAGOKGPl0Fm56ZpJsy",
    "packageImportPath": "@vapor-ui/composites"
}

.figma.ts:

import { getProperties } from '~/utils/figma-utils';

export default {
    example: figma.code` ... `
}

error log:

npx figma connect publish

Config file found, parsing /Users/goorm/01_works/my-works/packages/composites using specified include globs
❌ /Users/goorm/01_works/my-works/packages/composites/src/components/dialog/dialog.figma.ts
TypeScript template files only support importing from 'figma' and relative helper files.
Found in /Users/goorm/01_works/my-works/packages/composites/src/components/dialog/dialog.figma.ts:
  import { getProperties } from '~/utils/figma-utils';

Use "const figma = require('figma')" or "import figma from 'figma'" for the Figma API.
Helper imports must use relative paths (for example: "./helpers").
Using label "TEST"
Using language "typescript"
No Code Connect files found in /Users/goorm/01_works/my-works/packages/composites - Make sure you have configured `include` and `exclude` in your figma.config.json file correctly, or that you are running in a directory that contains Code Connect files.
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.