Búsqueda de sitios web

javascript - Paquete Turborepo/Typescript - manteniendo la estructura de importación


Estoy desarrollando una serie de paquetes para TypeScript como parte de un proyecto Turborepo. Un ejemplo de la estructura de importación de estos paquetes sería

import { Test } from "package-name"
import { Test } from "package-name/Test"

El problema que enfrento con esto es que en el desarrollo con Turborepo solo puedo referenciarlo así:

import { Test } from "package-name"
import { Test } from "package-name/dist/Test"
import { Test } from "package-name/src/Test"

Esto se debe a que no está en el directorio raíz, sino en el directorio src (o si está compilado, dist).

¿Hay alguna manera de evitar esto? He intentado varias opciones en TSConfig para ver si esto resolvería el problema, pero parece que no puedo encontrar ninguna.

Respuesta #1

Entonces, para responder a mi propia pregunta, creo que el mecanismo principal aquí sería (dado que es un número limitado de paquetes) que podría sobrescribir la ruta de importación con mis rutas de tsconfig.json en la aplicación principal que consume ese paquete, en lugar de en el propio paquete.

Probablemente haya una forma más limpia de hacer esto, pero funciona.

Por ejemplo

"package-name": [
     "../../node_modules/package-name/src/*",
]

Ahora puedo hacer:

import { Test } from "package-name"
import { Test } from "package-name/Test"

En lugar de

import { Test } from "package-name"
import { Test } from "package-name/src/Test"