pdfme / pdfme

A TypeScript based PDF generator library, made with React.
https://pdfme.com
MIT License
2.16k stars 192 forks source link

(node-resolve plugin) Could not resolve import "bwip-js" #418

Open Kamalito75 opened 3 months ago

Kamalito75 commented 3 months ago

Describe the bug

bwip-js could not be resolved in a fresh install of a Directus extension.

To Reproduce

npx create-directus-extension@latest Choose the extension type : hook Extension : my-extension Language : Typescript Auto install dependencies : Yes

cd my-extension
npm i @pdfme/generator @pdfme/common

Change the content of src/index.ts by :

import { defineHook } from "@directus/extensions-sdk";
import { generate } from "@pdfme/generator";
import { Template, BLANK_PDF } from "@pdfme/common";

export default defineHook(({ filter, action }) => {
  const template: Template = {
    basePdf: BLANK_PDF,
    schemas: [
      {
        a: {
          type: "text",
          position: { x: 0, y: 0 },
          width: 10,
          height: 10,
        },
        b: {
          type: "text",
          position: { x: 10, y: 10 },
          width: 10,
          height: 10,
        },
        c: {
          type: "text",
          position: { x: 20, y: 20 },
          width: 10,
          height: 10,
        },
      },
    ],
  };

  const inputs = [{ a: "a1", b: "b1", c: "c1" }];

  generate({ template, inputs }).then((pdf) => {
    console.log(pdf);
  });

  filter("items.create", () => {
    console.log("Creating Item!");
  });

  action("items.create", () => {
    console.log("Item created!");
  });
});

Then run : npm run build

The output :

directus-extension-my-extension@1.0.0 build directus-extension build

⠼ Building Directus extension...(node-resolve plugin) Could not resolve import "bwip-js" in D:\Projets\XXX\Extensions\my-extension\node_modules\@pdfme\schemas\dist\esm\src\barcodes\helper.js using exports defined in D:\Projets\XXX\Extensions\my-extension\node_modules\bwip-js\package.json.
⠋ Building Directus extension...(node-resolve plugin) Could not resolve import "bwip-js" in D:\Projets\AFPF\Extensions\my-extension\node_modules\@pdfme\schemas\dist\esm\src\barcodes\helper.js using exports defined in D:\Projets\XXX\Extensions\my-extension\node_modules\bwip-js\package.json. "bwip-js" is imported by "node_modules/@pdfme/schemas/dist/esm/src/barcodes/helper.js", but could not be resolved – treating it as an external dependency. ✔ Done

Expected behavior

An installation without problems of Pdfme in a Directus extension

Your Environment

- pdfme package(@pdfme/generator or @pdfme/ui): @pdfme/generator
- pdfme version: 3.2.2
- Operating system: WIndows 10
- Node.js version or Browser name & version: nodejs v 20.11.0

Your Error Log

⠼ Building Directus extension...(node-resolve plugin) **Could not resolve import "bwip-js"** in D:\Projets\XXX\Extensions\my-extension\node_modules\@pdfme\schemas\dist\esm\src\barcodes\helper.js using exports defined in D:\Projets\XXX\Extensions\my-extension\node_modules\bwip-js\package.json.    
⠋ Building Directus extension...(node-resolve plugin) **Could not resolve import "bwip-js"** in D:\Projets\AFPF\Extensions\my-extension\node_modules\@pdfme\schemas\dist\esm\src\barcodes\helper.js using exports defined in D:\Projets\XXX\Extensions\my-extension\node_modules\bwip-js\package.json.
"bwip-js" is imported by "node_modules/@pdfme/schemas/dist/esm/src/barcodes/helper.js", but could not be resolved – treating it as an external dependency.

Additional context

No response