Using the svelte field in package.json to point at .svelte source files is deprecated and you must use a svelte export condition. vite-plugin-svelte 3 still resolves it as a fallback, but in a future major release this is going to be removed and without exports condition resolving the library is going to fail.
You can also add individual exports of .svelte files in the exports map which gives users a choice to also use deep imports. See the faq about vite and prebundling why they can be useful at times.
Library authors are highly encouraged to update their packages to add the new exports condition as outlined above. Check out svelte-package which already supports it.
For backwards compatibility, you can keep the svelte field in addition to the exports condition. But make sure that both always resolve to the same files.
Repro steps
Steps to reproduce the behavior:
Scaffold a project with sveltekit@latest
Install p5-svelte@latest
Run npm run dev
Expected behavior
There's no warning about something that's gonna be deprecated in the future... 👀
Deprecated package.json svelte field
Using the svelte field in package.json to point at .svelte source files is deprecated and you must use a svelte export condition. vite-plugin-svelte 3 still resolves it as a fallback, but in a future major release this is going to be removed and without exports condition resolving the library is going to fail.
https://github.com/sveltejs/vite-plugin-svelte/blob/main/docs/faq.md#missing-exports-condition
Example:
You can also add individual exports of .svelte files in the exports map which gives users a choice to also use deep imports. See the faq about vite and prebundling why they can be useful at times.
Repro steps
Steps to reproduce the behavior:
sveltekit@latest
p5-svelte@latest
npm run dev
Expected behavior
There's no warning about something that's gonna be deprecated in the future... 👀
Screenshot
Desktop