vue3-google-signin icon indicating copy to clipboard operation
vue3-google-signin copied to clipboard

Incorrect 'module' Field and Missing 'types' Field in 'exports' Causing TypeScript Errors in ES Environment

Open zuhno opened this issue 1 year ago • 7 comments

Describe the bug When trying to import the 'vue3-google-signin' library in an ES environment, I encountered a type error indicating the absence of a declaration file for the module. The detailed error message is as follows:

Could not find a declaration file for module 'vue3-google-signin'. '/Users/junolee/Documents/mine/google-news-rss-pusher/node_modules/.pnpm/[email protected][email protected]/node_modules/vue3-google-signin/dist/index.es.js' implicitly has an 'any' type.
  There are types at '/Users/junolee/Documents/mine/google-news-rss-pusher/apps/@front/client/node_modules/vue3-google-signin/dist/plugin.d.ts', but this result could not be resolved when respecting package.json "exports". The 'vue3-google-signin' library may need to update its package.json or typings. ts(7016)

To Reproduce Steps to reproduce the behavior:

  1. Set up a project with the 'vue3-google-signin' package.
  2. Attempt to import the package in an ES module environment.
  3. Observe the TypeScript error related to type declarations.

Reproducible Example Currently, I do not have a reproducible example on platforms like StackBlitz or CodeSandbox. I will update this section if I am able to create one.

Expected behaviour The expected behavior is for the module to be imported without any type errors, with TypeScript being able to find and use the declaration files correctly.

Additional context To resolve this issue, the types field should be added under "exports" > "." in the package.json. Additionally, the module field is incorrectly pointing to a CJS module. It should instead specify the entry point for an ES module, typically using a .mjs or .js extension.

Contribution Proposal I am considering contributing to the 'vue3-google-signin' library to address this issue. I would like to propose corrections to the package.json file, particularly adding the types field under "exports" > ".", and correcting the module field to accurately point to an ES module entry point. I wanted to inquire if contributing these changes would be appropriate.

zuhno avatar Dec 24 '23 05:12 zuhno

Hi @zuhno thanks for reporting the issue. you can create a pr if you like to contribute to the project

kasvith avatar Dec 27 '23 09:12 kasvith

@kasvith I am interested in contributing, so I have opened a PR(https://github.com/wavezync/vue3-google-signin/pull/59). Please review it :)

zuhno avatar Dec 27 '23 10:12 zuhno

Closed by #59

kasvith avatar Dec 29 '23 05:12 kasvith

@kasvith the latest release with #59 has not been published to npm yet.

coverrt avatar Jan 04 '24 01:01 coverrt

@coverrt I have noted your comments as additional context in the issue(https://github.com/wavezync/vue3-google-signin/issues/60). Thank you for reminding again.

zuhno avatar Jan 04 '24 01:01 zuhno

Hi @zuhno can we get this fix on a separate PR?

kasvith avatar Jan 15 '24 19:01 kasvith

@kasvith Hi I have submitted the PR(https://github.com/wavezync/vue3-google-signin/pull/62) for version 1.3.4. This is because version 1.3.3 has already been released.

zuhno avatar Jan 15 '24 22:01 zuhno

this should be fixed by now

kasvith avatar Apr 23 '24 16:04 kasvith