Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

SyntaxError: Unexpected token 'export' #405

Open
Pierre-Green opened this issue Aug 13, 2020 · 0 comments
Open

SyntaxError: Unexpected token 'export' #405

Pierre-Green opened this issue Aug 13, 2020 · 0 comments

Comments

@Pierre-Green
Copy link

Pierre-Green commented Aug 13, 2020

Hello everyone,

I'm coding a typescript project that depends on private typescript dependencies.
My first step was to find a way to have the power of typescript completion on vscode. I had two solutions for that:

  1. Write module.d.ts for each of my private dependencies and transpile them into javascript.
  2. Find a way for my project to use typescript node_modules

With babel-plugin-module-resolver, I've written done this .babelrc file:

{
        "presets": ["@babel/preset-typescript", "@babel/preset-env"],
	"plugins": [
		"@babel/proposal-class-properties",
		[
			"module-resolver",
			{
				"root": ["./"],
				"alias": {
					"@": "./srcs",
					"private-lib1": "./node_modules/private-lib1/srcs",
					"private-lib2": "./node_modules/private-lib2/srcs"
				}
			}
		]
	]
}

And I appended this to my tsconfig.json file:

       { 
                "baseUrl": "./srcs",
		"paths": {
			"@/*": ["./*"],
			"private-lib1": ["../node_modules/private-lib1/srcs/index.ts"],
			"private-lib2": ["../node_modules/private-lib2/srcs/index.ts"]
		}
	},
	"include": ["srcs", "node_modules/private-lib1", "node_modules/private-lib2"]

When a run babel I get this error:

/home/xxx/Project/node_modules/private-lib1/srcs/index.ts:1
export * from './api';
^^^^^^

SyntaxError: Unexpected token 'export'
    at wrapSafe (internal/modules/cjs/loader.js:1067:16)
    at Module._compile (internal/modules/cjs/loader.js:1115:27)
    at Module._compile (/home/xxx/Project/node_modules/pirates/lib/index.js:99:24)
    at Module._extensions..js (internal/modules/cjs/loader.js:1171:10)
    at Object.newLoader [as .ts] (/home/xxx/Project/node_modules/pirates/lib/index.js:104:7)
    at Module.load (internal/modules/cjs/loader.js:1000:32)
    at Function.Module._load (internal/modules/cjs/loader.js:899:14)
    at Module.require (internal/modules/cjs/loader.js:1040:19)
    at require (internal/modules/cjs/helpers.js:72:18)
    at Object.<anonymous> (/home/xxx/Project/srcs/router/auth.ts:3:1)

So babel find the file, my completion work like a charm but babel connot transpile my dependencies. Do you know why or even better got a solution ?

This is my package.json devDependencies:

"devDependencies": {
		"@babel/cli": "^7.10.4",
		"@babel/core": "^7.10.4",
		"@babel/node": "^7.10.4",
		"@babel/plugin-proposal-class-properties": "^7.10.4",
		"@babel/plugin-transform-runtime": "^7.10.5",
		"@babel/preset-env": "^7.10.4",
		"@babel/preset-typescript": "^7.10.4",
		"@babel/runtime-corejs3": "^7.10.5",
		"babel-plugin-module-resolver": "^4.0.0",
		"babel-watch": "^7.0.0",
		"eslint": "^7.4.0",
		"eslint-config-prettier": "^6.11.0",
		"eslint-plugin-prettier": "^3.1.4"
	}

Thank you so much !

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant