question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Missing "." export in "@sveltejs/kit" package

See original GitHub issue

Describe the bug

When issue npm run build get this error

Reproduction

npm run build

My svelte.config.js

import preprocess from 'svelte-preprocess';
const config = {

	kit: {
		amp: false,
		appDir: '_app',
		files: {
			assets: 'static',
			//hooks: 'src/hooks',
			lib: 'src/lib',
			routes: 'src/routes',
			serviceWorker: 'src/service-worker.ts',
			template: 'src/app.html'
		},
		floc: false,
		hydrate: true,
		package: {
		 	files: {
		 		exclude: ['**/*.test.ts']
		 	}
		},
		prerender: {
			crawl: true,
			enabled: true,
			onError: 'continue',
			pages: ['*']
		},
		router: true,
		ssr: true,
		target: '#svelte',
		trailingSlash: 'never'
	},
	preprocess: preprocess({
		replace: [['process.env.NODE_ENV', JSON.stringify(process.env.NODE_ENV)]],
	}),
};

export default config;

My package.json

{
  "name": "~TODO~",
  "version": "0.0.1",
  "scripts": {
    "dev": "svelte-kit dev",
    "build": "svelte-kit build",
    "preview": "svelte-kit preview",
    "check": "svelte-check --tsconfig ./tsconfig.json",
    "check:watch": "svelte-check --tsconfig ./tsconfig.json --watch",
    "lint": "prettier --check --plugin-search-dir=. . && eslint --ignore-path .gitignore .",
    "format": "prettier --write --plugin-search-dir=. .",
    "test": "jest"
  },
  "//": "force install svelte-jester on version 1.8.2, 2.1.1 is broken and being fixed",
  "devDependencies": {
    "@sveltejs/kit": "next",
    "@testing-library/jest-dom": "^5.14.1",
    "@testing-library/svelte": "^3.0.3",
    "@types/jest": "^27.0.1",
    "@typescript-eslint/eslint-plugin": "^4.19.0",
    "@typescript-eslint/parser": "^4.19.0",
    "eslint": "^7.22.0",
    "eslint-config-prettier": "^8.1.0",
    "eslint-plugin-svelte3": "^3.2.0",
    "jest": "^27.1.0",
    "jest-localstorage-mock": "^2.4.17",
    "prettier": "~2.2.1",
    "prettier-plugin-svelte": "^2.2.0",
    "svelte": "^3.34.0",
    "svelte-check": "^2.0.0",
    "svelte-jester": "1.8.2",
    "svelte-preprocess": "^4.0.0",
    "ts-jest": "^27.0.5",
    "tslib": "^2.0.0",
    "typescript": "^4.0.0"
  },
  "type": "module"
}

Logs

npm run build

> ~TODO~@0.0.1 build
> svelte-kit build

vite v2.5.4 building for production...
✓ 30 modules transformed.
.svelte-kit/output/client/_app/manifest.json                               1.30 KiB
.svelte-kit/output/client/_app/error.svelte-89ee8862.js                    1.55 KiB / brotli: 0.64 KiB
.svelte-kit/output/client/_app/pages/__layout.svelte-a8251f0c.js           0.72 KiB / brotli: 0.41 KiB
.svelte-kit/output/client/_app/assets/start-61d1577b.css                   0.16 KiB / brotli: 0.11 KiB
.svelte-kit/output/client/_app/assets/pages/__layout.svelte-3c7a1a64.css   0.72 KiB / brotli: 0.37 KiB
.svelte-kit/output/client/_app/assets/pages/index.svelte-7545cfa0.css      2.71 KiB / brotli: 0.65 KiB
.svelte-kit/output/client/_app/chunks/vendor-401acf23.js                   7.57 KiB / brotli: 2.79 KiB
.svelte-kit/output/client/_app/pages/index.svelte-0ea4a5cb.js              10.38 KiB / brotli: 3.38 KiB
.svelte-kit/output/client/_app/start-2fb977ed.js                           17.60 KiB / brotli: 5.62 KiB
vite v2.5.4 building SSR bundle for production...
Bundling package for SSR due to resolve failure. Failed to resolve entry for package "@sveltejs/kit". The package may have incorrect main/module/exports specified in its package.json: Missing "." export in "@sveltejs/kit" package     
Bundling package for SSR due to resolve failure. Failed to resolve entry for package "@types/jest". The package may have incorrect main/module/exports specified in its package.json: Failed to resolve entry for package "@types/jest". The package may have incorrect main/module/exports specified in its package.json.
✓ 29 modules transformed.
.svelte-kit/output/server/app.js   83.31 KiB
vite v2.5.4 building for production...
✓ 2 modules transformed.
.svelte-kit/output/client/service-worker.js   0.41 KiB / brotli: 0.20 KiB

Run npm run preview to preview your production build locally.

System Info

node version: v16.3.0
svelte-kit, 1.0.0-next.164

Severity

serious, but I can work around it

Additional Information

No response

Issue Analytics

  • State:closed
  • Created 2 years ago
  • Reactions:4
  • Comments:13 (8 by maintainers)

github_iconTop GitHub Comments

10reactions
MarcusCemescommented, Oct 4, 2021

In case this helps anyone, I ran into the same problem after replacing all occurrences of import type { ... } with import { ... }.

TypeScript users no longer have to strictly separate type imports and value imports (…) - Svelte October blog post

It seems that some imports, such as those importing from @svelte/kit or those in <script context="module"> still need explicit type imports (I’m not sure which is the cause). Another solution is to use JS and a @type hint such as in the Svelte docs.

<script context="module" lang="ts">
  import type { Load } from "@sveltejs/kit";
  export const load: Load = async ({ page, fetch }) => {
<script context="module">
  /**
   * @type {import("@svelte/kit").Load}
   */
  export async function load({ page, fetch }) {
4reactions
bluwycommented, Jul 13, 2022

From the errors, looks like it’s coming from Vite’s dep scanner, which uses esbuild to process TS, and it tries to resolve @sveltejs/kit because it’s not a type import. I guess we can add an extra heuristic where if it fails to resolve, it checks if there’s a type condition and suggest that. But it would be a fair refactor before we can do that. I’ll put this in my todo list 🙂

Read more comments on GitHub >

github_iconTop Results From Across the Web

0 - Stack Overflow
SvelteKit fails to Run Dev | [plugin externalize-deps] Missing "./vite" export in "@sveltejs/kit" package · Ask Question. Asked 15 days ago.
Read more >
vite-plugin-svelte-svgr - npm package - Snyk
A Vite plugin which enables SVG import similar to what you may be accustomed to in React. This plugin will preprocess SVG elements...
Read more >
Migrating Breaking Changes in SvelteKit - Netlify
SvelteKit has gone through a few breaking changes recently including ... the data and then exporting a prop of the same name in...
Read more >
FAQ • SvelteKit
How do I fix the error I'm getting trying to include a package? permalink · exports takes precedence over the other entry point...
Read more >
9b1deb4d-3b7d-4bad-9bdd-2b0d7b3dcb6d - You.com
0" works perfectly locally but showing "errorMessage":"Package subpath './ssr' is not defined by \"exports\" in /var/task/node_modules/@sveltejs/kit/package.
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found