use ts loader, exclude node_module for now

This commit is contained in:
Johannes Rieken 2018-08-16 10:52:08 +02:00
parent 5a3c0eebfb
commit d62f5b3da9
6 changed files with 71 additions and 39 deletions

View file

@ -8,31 +8,40 @@
const path = require('path'); const path = require('path');
module.exports = { module.exports = {
mode: 'production', // mode: 'production',
// mode: 'none', // stats: 'errors-only',
mode: 'none',
context: __dirname, context: __dirname,
target: 'node', target: 'node',
resolve: {
mainFields: ['main']
},
entry: { entry: {
extension: './out/extension.js', extension: './src/extension.ts',
},
resolve: {
mainFields: ['main'],
extensions: [".ts", ".js"]
},
module: {
rules: [{
test: /\.ts$/,
exclude: /node_modules/,
use: [{
loader: 'ts-loader',
options: { transpileOnly: true }
}]
}]
}, },
output: { output: {
filename: '[name].js', filename: '[name].js',
path: path.join(__dirname, 'dist'), path: path.join(__dirname, 'dist'),
libraryTarget: "commonjs", libraryTarget: "commonjs",
}, },
devtool: 'source-map',
externals: { externals: {
'vscode': 'commonjs vscode', 'vscode': 'commonjs vscode',
'@emmetio/css-parser': 'commonjs @emmetio/css-parser',
'@emmetio/html-matcher': 'commonjs @emmetio/html-matcher',
'@emmetio/math-expression': 'commonjs @emmetio/math-expression',
'image-size': 'commonjs image-size',
'vscode-emmet-helper': 'commonjs vscode-emmet-helper',
}, },
stats: 'errors-only',
devtool: 'source-map',
module: {
rules: [{
test: /\.js$/,
use: ["source-map-loader"],
enforce: "pre"
}]
}
}; };

View file

@ -6,6 +6,7 @@
], ],
"module": "commonjs", "module": "commonjs",
"outDir": "./out", "outDir": "./out",
"sourceMap": true,
"noUnusedLocals": true, "noUnusedLocals": true,
"strictNullChecks": true "strictNullChecks": true
}, },
@ -16,4 +17,4 @@
"include": [ "include": [
"src/**/*" "src/**/*"
] ]
} }

View file

@ -9,42 +9,52 @@ const path = require('path');
const CopyWebpackPlugin = require('copy-webpack-plugin'); const CopyWebpackPlugin = require('copy-webpack-plugin');
module.exports = { module.exports = {
mode: 'production', // mode: 'production',
// mode: 'none', // stats: 'errors-only',
mode: 'none',
context: __dirname, context: __dirname,
target: 'node', target: 'node',
node: { node: {
__dirname: false __dirname: false
}, },
resolve: {
mainFields: ['main']
},
entry: { entry: {
main: './out/main.js', main: './src/main.ts',
['askpass-main']: './out/askpass-main.js' ['askpass-main']: './src/askpass-main.ts'
},
resolve: {
mainFields: ['main'],
extensions: [".ts", ".js"]
},
module: {
rules: [{
test: /\.ts$/,
exclude: /node_modules/,
use: [{
loader: 'ts-loader',
options: { transpileOnly: true }
}]
}]
}, },
output: { output: {
filename: '[name].js', filename: '[name].js',
path: path.join(__dirname, 'dist'), path: path.join(__dirname, 'dist'),
libraryTarget: "commonjs" libraryTarget: "commonjs"
}, },
externals: {
'vscode': 'commonjs vscode',
'vscode-nls': 'commonjs vscode-nls',
},
plugins: [ plugins: [
new CopyWebpackPlugin([ new CopyWebpackPlugin([
{ from: './out/*.sh', to: '[name].sh' }, { from: './out/*.sh', to: '[name].sh' },
{ from: './out/nls.*.json', to: '[name].json' } { from: './out/nls.*.json', to: '[name].json' }
]) ])
], ],
stats: 'errors-only',
devtool: 'source-map', devtool: 'source-map',
module: { externals: {
rules: [{ 'vscode': 'commonjs vscode',
test: /\.js$/, "byline": 'commonjs byline',
use: ["source-map-loader"], "file-type": 'commonjs file-type',
enforce: "pre" "iconv-lite": 'commonjs iconv-lite',
}] "jschardet": 'commonjs jschardet',
} "vscode-extension-telemetry": 'commonjs vscode-extension-telemetry',
"vscode-nls": 'commonjs vscode-nls',
"which": 'commonjs which',
},
}; };

View file

@ -11,9 +11,10 @@
], ],
"strict": true, "strict": true,
"experimentalDecorators": true, "experimentalDecorators": true,
"noUnusedLocals": true "noUnusedLocals": true,
"sourceMap": true
}, },
"include": [ "include": [
"src/**/*" "src/**/*"
] ]
} }

View file

@ -118,6 +118,7 @@
"sinon": "^1.17.2", "sinon": "^1.17.2",
"source-map": "^0.4.4", "source-map": "^0.4.4",
"source-map-loader": "^0.2.3", "source-map-loader": "^0.2.3",
"ts-loader": "^4.4.2",
"tslint": "^5.9.1", "tslint": "^5.9.1",
"typescript": "2.9.2", "typescript": "2.9.2",
"typescript-formatter": "7.1.0", "typescript-formatter": "7.1.0",

View file

@ -4312,7 +4312,7 @@ loader-runner@^2.3.0:
version "2.3.0" version "2.3.0"
resolved "https://registry.yarnpkg.com/loader-runner/-/loader-runner-2.3.0.tgz#f482aea82d543e07921700d5a46ef26fdac6b8a2" resolved "https://registry.yarnpkg.com/loader-runner/-/loader-runner-2.3.0.tgz#f482aea82d543e07921700d5a46ef26fdac6b8a2"
loader-utils@^1.1.0: loader-utils@^1.0.2, loader-utils@^1.1.0:
version "1.1.0" version "1.1.0"
resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-1.1.0.tgz#c98aef488bcceda2ffb5e2de646d6a754429f5cd" resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-1.1.0.tgz#c98aef488bcceda2ffb5e2de646d6a754429f5cd"
dependencies: dependencies:
@ -6666,7 +6666,7 @@ semver@^4.1.0, semver@^4.3.4:
version "4.3.6" version "4.3.6"
resolved "https://registry.yarnpkg.com/semver/-/semver-4.3.6.tgz#300bc6e0e86374f7ba61068b5b1ecd57fc6532da" resolved "https://registry.yarnpkg.com/semver/-/semver-4.3.6.tgz#300bc6e0e86374f7ba61068b5b1ecd57fc6532da"
semver@^5.4.1, semver@^5.5.0: semver@^5.0.1, semver@^5.4.1, semver@^5.5.0:
version "5.5.0" version "5.5.0"
resolved "https://registry.yarnpkg.com/semver/-/semver-5.5.0.tgz#dc4bbc7a6ca9d916dee5d43516f0092b58f7b8ab" resolved "https://registry.yarnpkg.com/semver/-/semver-5.5.0.tgz#dc4bbc7a6ca9d916dee5d43516f0092b58f7b8ab"
@ -7415,6 +7415,16 @@ tryit@^1.0.1:
version "1.0.3" version "1.0.3"
resolved "https://registry.yarnpkg.com/tryit/-/tryit-1.0.3.tgz#393be730a9446fd1ead6da59a014308f36c289cb" resolved "https://registry.yarnpkg.com/tryit/-/tryit-1.0.3.tgz#393be730a9446fd1ead6da59a014308f36c289cb"
ts-loader@^4.4.2:
version "4.4.2"
resolved "https://registry.yarnpkg.com/ts-loader/-/ts-loader-4.4.2.tgz#778d4464b24436873c78f7f9e914d88194c2a248"
dependencies:
chalk "^2.3.0"
enhanced-resolve "^4.0.0"
loader-utils "^1.0.2"
micromatch "^3.1.4"
semver "^5.0.1"
tslib@^1.7.1: tslib@^1.7.1:
version "1.8.0" version "1.8.0"
resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.8.0.tgz#dc604ebad64bcbf696d613da6c954aa0e7ea1eb6" resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.8.0.tgz#dc604ebad64bcbf696d613da6c954aa0e7ea1eb6"