Tengo un problema. Actualmente estoy creando una biblioteca de componentes para reaccionar, funciona perfectamente en el libro de cuentos. Pero cuando hago un resumen de npm o instalo mi paquete desde npm. Miro dentro de las carpetas cjs y esm y no todos mis archivos necesarios están allí.
Aquí están mis archivos de configuración:
const packageJson = require("./package.json"); export default [ { input: "src/index.ts", output: [ { file: packageJson.main, format: "cjs", sourcemap: true, }, { file: packageJson.module, format: "esm", sourcemap: true, }, ], plugins: [ resolve(), commonjs(), typescript({ tsconfig: "./tsconfig.json" }), ], }, { input: "dist/esm/types/index.d.ts", output: [{ file: "dist/index.d.ts", format: "esm" }], plugins: [dts()], }, ];resumen.config.ts
export * from "./components"; export * from "./core"; export * from "./themes"; export * from "./hooks";src/index.ts
export { default as GlobalTheme } from "./global-theme"; export { default as LightTheme } from "./light-theme"; export { default as DarkTheme } from "./dark-theme";temas/index.ts
Cuando trato de usar mi biblioteca en otro proyecto, me da muchos errores de compilación:
Failed to parse source map from '...\node_modules\@gitname\LIBRARY_NAME\src\themes\light-theme.ts' file: Error: ENOENT: no such file or directoryy el mismo mensaje para cada componente que creé en la biblioteca.
Sinceramente, estoy atascado, probé todas las soluciones en Internet, ninguna funcionó.
Gracias de antemano por su ayuda
Tiene que ver con la forma en que está importando sus componentes. Tuve exactamente el mismo problema con la misma configuración que tú. En mi caso tuve algo como:
{ input: "dist/types/index.d.ts", output: [{ file: "dist/index.d.ts", format: "esm" }], plugins: [dts()], }Cuando está utilizando los componentes, tiene que importar desde donde están los archivos empaquetados reales. En mi caso estaba en la carpeta dist. así que impórtalo así,
Import {Button} from "@yourlib/your-lib/dist"