@theia/application-manager 1.67.0-next.13 → 1.67.0-next.56
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +5 -5
- package/lib/application-package-manager.d.ts +0 -46
- package/lib/application-package-manager.d.ts.map +0 -1
- package/lib/application-package-manager.js +0 -226
- package/lib/application-package-manager.js.map +0 -1
- package/lib/application-process.d.ts +0 -21
- package/lib/application-process.d.ts.map +0 -1
- package/lib/application-process.js +0 -93
- package/lib/application-process.js.map +0 -1
- package/lib/expose-loader.d.ts +0 -9
- package/lib/expose-loader.d.ts.map +0 -1
- package/lib/expose-loader.js +0 -70
- package/lib/expose-loader.js.map +0 -1
- package/lib/generator/abstract-generator.d.ts +0 -18
- package/lib/generator/abstract-generator.d.ts.map +0 -1
- package/lib/generator/abstract-generator.js +0 -58
- package/lib/generator/abstract-generator.js.map +0 -1
- package/lib/generator/backend-generator.d.ts +0 -8
- package/lib/generator/backend-generator.d.ts.map +0 -1
- package/lib/generator/backend-generator.js +0 -203
- package/lib/generator/backend-generator.js.map +0 -1
- package/lib/generator/frontend-generator.d.ts +0 -14
- package/lib/generator/frontend-generator.d.ts.map +0 -1
- package/lib/generator/frontend-generator.js +0 -211
- package/lib/generator/frontend-generator.js.map +0 -1
- package/lib/generator/index.d.ts +0 -4
- package/lib/generator/index.d.ts.map +0 -1
- package/lib/generator/index.js +0 -22
- package/lib/generator/index.js.map +0 -1
- package/lib/generator/webpack-generator.d.ts +0 -12
- package/lib/generator/webpack-generator.d.ts.map +0 -1
- package/lib/generator/webpack-generator.js +0 -523
- package/lib/generator/webpack-generator.js.map +0 -1
- package/lib/index.d.ts +0 -4
- package/lib/index.d.ts.map +0 -1
- package/lib/index.js +0 -22
- package/lib/index.js.map +0 -1
- package/lib/package.spec.d.ts +0 -1
- package/lib/package.spec.d.ts.map +0 -1
- package/lib/package.spec.js +0 -26
- package/lib/package.spec.js.map +0 -1
- package/lib/rebuild.d.ts +0 -25
- package/lib/rebuild.d.ts.map +0 -1
- package/lib/rebuild.js +0 -314
- package/lib/rebuild.js.map +0 -1
|
@@ -1,523 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
// *****************************************************************************
|
|
3
|
-
// Copyright (C) 2017 TypeFox and others.
|
|
4
|
-
//
|
|
5
|
-
// This program and the accompanying materials are made available under the
|
|
6
|
-
// terms of the Eclipse Public License v. 2.0 which is available at
|
|
7
|
-
// http://www.eclipse.org/legal/epl-2.0.
|
|
8
|
-
//
|
|
9
|
-
// This Source Code may also be made available under the following Secondary
|
|
10
|
-
// Licenses when the conditions for such availability set forth in the Eclipse
|
|
11
|
-
// Public License v. 2.0 are satisfied: GNU General Public License, version 2
|
|
12
|
-
// with the GNU Classpath Exception which is available at
|
|
13
|
-
// https://www.gnu.org/software/classpath/license.html.
|
|
14
|
-
//
|
|
15
|
-
// SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
|
|
16
|
-
// *****************************************************************************
|
|
17
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
-
exports.WebpackGenerator = void 0;
|
|
19
|
-
const paths = require("path");
|
|
20
|
-
const fs = require("fs-extra");
|
|
21
|
-
const abstract_generator_1 = require("./abstract-generator");
|
|
22
|
-
class WebpackGenerator extends abstract_generator_1.AbstractGenerator {
|
|
23
|
-
async generate() {
|
|
24
|
-
await this.write(this.genConfigPath, this.compileWebpackConfig());
|
|
25
|
-
if (!this.pck.isBrowserOnly()) {
|
|
26
|
-
await this.write(this.genNodeConfigPath, this.compileNodeWebpackConfig());
|
|
27
|
-
}
|
|
28
|
-
if (await this.shouldGenerateUserWebpackConfig()) {
|
|
29
|
-
await this.write(this.configPath, this.compileUserWebpackConfig());
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
async shouldGenerateUserWebpackConfig() {
|
|
33
|
-
if (!(await fs.pathExists(this.configPath))) {
|
|
34
|
-
return true;
|
|
35
|
-
}
|
|
36
|
-
const content = await fs.readFile(this.configPath, 'utf8');
|
|
37
|
-
return content.indexOf('gen-webpack') === -1;
|
|
38
|
-
}
|
|
39
|
-
get configPath() {
|
|
40
|
-
return this.pck.path('webpack.config.js');
|
|
41
|
-
}
|
|
42
|
-
get genConfigPath() {
|
|
43
|
-
return this.pck.path('gen-webpack.config.js');
|
|
44
|
-
}
|
|
45
|
-
get genNodeConfigPath() {
|
|
46
|
-
return this.pck.path('gen-webpack.node.config.js');
|
|
47
|
-
}
|
|
48
|
-
compileWebpackConfig() {
|
|
49
|
-
return `/**
|
|
50
|
-
* Don't touch this file. It will be regenerated by theia build.
|
|
51
|
-
* To customize webpack configuration change ${this.configPath}
|
|
52
|
-
*/
|
|
53
|
-
// @ts-check
|
|
54
|
-
const path = require('path');
|
|
55
|
-
const webpack = require('webpack');
|
|
56
|
-
const yargs = require('yargs');
|
|
57
|
-
const resolvePackagePath = require('resolve-package-path');
|
|
58
|
-
const CopyWebpackPlugin = require('copy-webpack-plugin');
|
|
59
|
-
const CompressionPlugin = require('compression-webpack-plugin');
|
|
60
|
-
const MiniCssExtractPlugin = require('mini-css-extract-plugin');
|
|
61
|
-
const { MonacoWebpackPlugin } = require('@theia/native-webpack-plugin/lib/monaco-webpack-plugins.js');
|
|
62
|
-
|
|
63
|
-
const outputPath = path.resolve(__dirname, 'lib', 'frontend');
|
|
64
|
-
const { mode, staticCompression } = yargs.option('mode', {
|
|
65
|
-
description: "Mode to use",
|
|
66
|
-
choices: ["development", "production"],
|
|
67
|
-
default: "production"
|
|
68
|
-
}).option('static-compression', {
|
|
69
|
-
description: 'Controls whether to enable compression of static artifacts.',
|
|
70
|
-
type: 'boolean',
|
|
71
|
-
default: true
|
|
72
|
-
}).argv;
|
|
73
|
-
const development = mode === 'development';
|
|
74
|
-
|
|
75
|
-
const plugins = [
|
|
76
|
-
new CopyWebpackPlugin({
|
|
77
|
-
patterns: [
|
|
78
|
-
{
|
|
79
|
-
// copy secondary window html file to lib folder
|
|
80
|
-
from: path.resolve(__dirname, 'src-gen/frontend/secondary-window.html')
|
|
81
|
-
}${this.ifPackage('@theia/plugin-ext', `,
|
|
82
|
-
{
|
|
83
|
-
// copy webview files to lib folder
|
|
84
|
-
from: path.join(resolvePackagePath('@theia/plugin-ext', __dirname), '..', 'src', 'main', 'browser', 'webview', 'pre'),
|
|
85
|
-
to: path.resolve(__dirname, 'lib', 'webview', 'pre')
|
|
86
|
-
}`)}
|
|
87
|
-
${this.ifPackage('@theia/plugin-ext-vscode', `,
|
|
88
|
-
{
|
|
89
|
-
// copy frontend plugin host files
|
|
90
|
-
from: path.join(resolvePackagePath('@theia/plugin-ext-vscode', __dirname), '..', 'lib', 'node', 'context', 'plugin-vscode-init-fe.js'),
|
|
91
|
-
to: path.resolve(__dirname, 'lib', 'frontend', 'context', 'plugin-vscode-init-fe.js')
|
|
92
|
-
}`)}
|
|
93
|
-
]
|
|
94
|
-
}),
|
|
95
|
-
new webpack.ProvidePlugin({
|
|
96
|
-
// the Buffer class doesn't exist in the browser but some dependencies rely on it
|
|
97
|
-
Buffer: ['buffer', 'Buffer']
|
|
98
|
-
}),
|
|
99
|
-
new MonacoWebpackPlugin()
|
|
100
|
-
];
|
|
101
|
-
// it should go after copy-plugin in order to compress monaco as well
|
|
102
|
-
if (staticCompression) {
|
|
103
|
-
plugins.push(new CompressionPlugin({}));
|
|
104
|
-
}
|
|
105
|
-
|
|
106
|
-
module.exports = [{
|
|
107
|
-
mode,
|
|
108
|
-
plugins,
|
|
109
|
-
devtool: 'source-map',
|
|
110
|
-
entry: {
|
|
111
|
-
bundle: path.resolve(__dirname, 'src-gen/frontend/index.js'),
|
|
112
|
-
${this.ifMonaco(() => "'editor.worker': '@theia/monaco-editor-core/esm/vs/editor/editor.worker.js'")}
|
|
113
|
-
},
|
|
114
|
-
output: {
|
|
115
|
-
filename: '[name].js',
|
|
116
|
-
path: outputPath,
|
|
117
|
-
devtoolModuleFilenameTemplate: 'webpack:///[resource-path]?[loaders]',
|
|
118
|
-
globalObject: 'self'
|
|
119
|
-
},
|
|
120
|
-
target: 'web',
|
|
121
|
-
cache: staticCompression,
|
|
122
|
-
module: {
|
|
123
|
-
rules: [
|
|
124
|
-
{
|
|
125
|
-
test: /\\.css$/,
|
|
126
|
-
exclude: /materialcolors\\.css$|\\.useable\\.css$/,
|
|
127
|
-
use: ['style-loader', 'css-loader']
|
|
128
|
-
},
|
|
129
|
-
{
|
|
130
|
-
test: /materialcolors\\.css$|\\.useable\\.css$/,
|
|
131
|
-
use: [
|
|
132
|
-
{
|
|
133
|
-
loader: 'style-loader',
|
|
134
|
-
options: {
|
|
135
|
-
esModule: false,
|
|
136
|
-
injectType: 'lazySingletonStyleTag',
|
|
137
|
-
attributes: {
|
|
138
|
-
id: 'theia-theme'
|
|
139
|
-
}
|
|
140
|
-
}
|
|
141
|
-
},
|
|
142
|
-
'css-loader'
|
|
143
|
-
]
|
|
144
|
-
},
|
|
145
|
-
{
|
|
146
|
-
test: /\\.(ttf|eot|svg)(\\?v=\\d+\\.\\d+\\.\\d+)?$/,
|
|
147
|
-
type: 'asset',
|
|
148
|
-
parser: {
|
|
149
|
-
dataUrlCondition: {
|
|
150
|
-
maxSize: 10000,
|
|
151
|
-
}
|
|
152
|
-
},
|
|
153
|
-
generator: {
|
|
154
|
-
dataUrl: {
|
|
155
|
-
mimetype: 'image/svg+xml'
|
|
156
|
-
}
|
|
157
|
-
}
|
|
158
|
-
},
|
|
159
|
-
{
|
|
160
|
-
test: /\\.(jpg|png|gif)$/,
|
|
161
|
-
type: 'asset/resource',
|
|
162
|
-
generator: {
|
|
163
|
-
filename: '[hash].[ext]'
|
|
164
|
-
}
|
|
165
|
-
},
|
|
166
|
-
{
|
|
167
|
-
// see https://github.com/eclipse-theia/theia/issues/556
|
|
168
|
-
test: /source-map-support/,
|
|
169
|
-
loader: 'ignore-loader'
|
|
170
|
-
},
|
|
171
|
-
{
|
|
172
|
-
test: /\\.d\\.ts$/,
|
|
173
|
-
loader: 'ignore-loader'
|
|
174
|
-
},
|
|
175
|
-
{
|
|
176
|
-
test: /\\.js$/,
|
|
177
|
-
enforce: 'pre',
|
|
178
|
-
loader: 'source-map-loader',
|
|
179
|
-
exclude: /jsonc-parser|fast-plist|onigasm/
|
|
180
|
-
},
|
|
181
|
-
{
|
|
182
|
-
test: /\\.woff(2)?(\\?v=[0-9]\\.[0-9]\\.[0-9])?$/,
|
|
183
|
-
type: 'asset',
|
|
184
|
-
parser: {
|
|
185
|
-
dataUrlCondition: {
|
|
186
|
-
maxSize: 10000,
|
|
187
|
-
}
|
|
188
|
-
},
|
|
189
|
-
generator: {
|
|
190
|
-
dataUrl: {
|
|
191
|
-
mimetype: 'image/svg+xml'
|
|
192
|
-
}
|
|
193
|
-
}
|
|
194
|
-
},
|
|
195
|
-
{
|
|
196
|
-
test: /node_modules[\\\\|\/](vscode-languageserver-types|vscode-uri|jsonc-parser|vscode-languageserver-protocol)/,
|
|
197
|
-
loader: 'umd-compat-loader'
|
|
198
|
-
},
|
|
199
|
-
{
|
|
200
|
-
test: /\\.wasm$/,
|
|
201
|
-
type: 'asset/resource'
|
|
202
|
-
},
|
|
203
|
-
{
|
|
204
|
-
test: /\\.plist$/,
|
|
205
|
-
type: 'asset/resource'
|
|
206
|
-
}
|
|
207
|
-
]
|
|
208
|
-
},
|
|
209
|
-
resolve: {
|
|
210
|
-
fallback: {
|
|
211
|
-
'child_process': false,
|
|
212
|
-
'crypto': false,
|
|
213
|
-
'net': false,
|
|
214
|
-
'path': require.resolve('path-browserify'),
|
|
215
|
-
'process': false,
|
|
216
|
-
'os': false,
|
|
217
|
-
'timers': false
|
|
218
|
-
},
|
|
219
|
-
extensions: ['.js']
|
|
220
|
-
},
|
|
221
|
-
stats: {
|
|
222
|
-
warnings: true,
|
|
223
|
-
children: true
|
|
224
|
-
},
|
|
225
|
-
ignoreWarnings: [
|
|
226
|
-
// Some packages do not have source maps, that's ok
|
|
227
|
-
/Failed to parse source map/,
|
|
228
|
-
{
|
|
229
|
-
// Monaco uses 'require' in a non-standard way
|
|
230
|
-
module: /@theia\\/monaco-editor-core/,
|
|
231
|
-
message: /require function is used in a way in which dependencies cannot be statically extracted/
|
|
232
|
-
}
|
|
233
|
-
]
|
|
234
|
-
},
|
|
235
|
-
{
|
|
236
|
-
mode,
|
|
237
|
-
plugins: [
|
|
238
|
-
new MiniCssExtractPlugin({
|
|
239
|
-
// Options similar to the same options in webpackOptions.output
|
|
240
|
-
// both options are optional
|
|
241
|
-
filename: "[name].css",
|
|
242
|
-
chunkFilename: "[id].css",
|
|
243
|
-
}),
|
|
244
|
-
new MonacoWebpackPlugin(),
|
|
245
|
-
],
|
|
246
|
-
devtool: 'source-map',
|
|
247
|
-
entry: {
|
|
248
|
-
"secondary-window": path.resolve(__dirname, 'src-gen/frontend/secondary-index.js'),
|
|
249
|
-
},
|
|
250
|
-
output: {
|
|
251
|
-
filename: '[name].js',
|
|
252
|
-
path: outputPath,
|
|
253
|
-
devtoolModuleFilenameTemplate: 'webpack:///[resource-path]?[loaders]',
|
|
254
|
-
globalObject: 'self'
|
|
255
|
-
},
|
|
256
|
-
target: 'web',
|
|
257
|
-
cache: staticCompression,
|
|
258
|
-
module: {
|
|
259
|
-
rules: [
|
|
260
|
-
{
|
|
261
|
-
test: /\.css$/i,
|
|
262
|
-
use: [MiniCssExtractPlugin.loader, "css-loader"]
|
|
263
|
-
},
|
|
264
|
-
{
|
|
265
|
-
test: /\.wasm$/,
|
|
266
|
-
type: 'asset/resource'
|
|
267
|
-
}
|
|
268
|
-
]
|
|
269
|
-
},
|
|
270
|
-
resolve: {
|
|
271
|
-
fallback: {
|
|
272
|
-
'child_process': false,
|
|
273
|
-
'crypto': false,
|
|
274
|
-
'net': false,
|
|
275
|
-
'path': require.resolve('path-browserify'),
|
|
276
|
-
'process': false,
|
|
277
|
-
'os': false,
|
|
278
|
-
'timers': false
|
|
279
|
-
},
|
|
280
|
-
extensions: ['.js']
|
|
281
|
-
},
|
|
282
|
-
stats: {
|
|
283
|
-
warnings: true,
|
|
284
|
-
children: true
|
|
285
|
-
},
|
|
286
|
-
ignoreWarnings: [
|
|
287
|
-
{
|
|
288
|
-
// Monaco uses 'require' in a non-standard way
|
|
289
|
-
module: /@theia\\/monaco-editor-core/,
|
|
290
|
-
message: /require function is used in a way in which dependencies cannot be statically extracted/
|
|
291
|
-
}
|
|
292
|
-
]
|
|
293
|
-
}${this.ifElectron(`, {
|
|
294
|
-
mode,
|
|
295
|
-
devtool: 'source-map',
|
|
296
|
-
entry: {
|
|
297
|
-
"preload": path.resolve(__dirname, 'src-gen/frontend/preload.js'),
|
|
298
|
-
},
|
|
299
|
-
output: {
|
|
300
|
-
filename: '[name].js',
|
|
301
|
-
path: outputPath,
|
|
302
|
-
devtoolModuleFilenameTemplate: 'webpack:///[resource-path]?[loaders]',
|
|
303
|
-
globalObject: 'self'
|
|
304
|
-
},
|
|
305
|
-
target: 'electron-preload',
|
|
306
|
-
cache: staticCompression,
|
|
307
|
-
stats: {
|
|
308
|
-
warnings: true,
|
|
309
|
-
children: true
|
|
310
|
-
}
|
|
311
|
-
}`)}];`;
|
|
312
|
-
}
|
|
313
|
-
compileUserWebpackConfig() {
|
|
314
|
-
return `/**
|
|
315
|
-
* This file can be edited to customize webpack configuration.
|
|
316
|
-
* To reset delete this file and rerun theia build again.
|
|
317
|
-
*/
|
|
318
|
-
// @ts-check
|
|
319
|
-
const configs = require('./${paths.basename(this.genConfigPath)}');
|
|
320
|
-
${this.ifBrowserOnly('', `const nodeConfig = require('./${paths.basename(this.genNodeConfigPath)}');`)}
|
|
321
|
-
|
|
322
|
-
/**
|
|
323
|
-
* Expose bundled modules on window.theia.moduleName namespace, e.g.
|
|
324
|
-
* window['theia']['@theia/core/lib/common/uri'].
|
|
325
|
-
* Such syntax can be used by external code, for instance, for testing.
|
|
326
|
-
configs[0].module.rules.push({
|
|
327
|
-
test: /\\.js$/,
|
|
328
|
-
loader: require.resolve('@theia/application-manager/lib/expose-loader')
|
|
329
|
-
}); */
|
|
330
|
-
|
|
331
|
-
${this.ifBrowserOnly('module.exports = configs;', `module.exports = [
|
|
332
|
-
...configs,
|
|
333
|
-
nodeConfig.config
|
|
334
|
-
];`)}
|
|
335
|
-
`;
|
|
336
|
-
}
|
|
337
|
-
compileNodeWebpackConfig() {
|
|
338
|
-
return `/**
|
|
339
|
-
* Don't touch this file. It will be regenerated by theia build.
|
|
340
|
-
* To customize webpack configuration change ${this.configPath}
|
|
341
|
-
*/
|
|
342
|
-
// @ts-check
|
|
343
|
-
const path = require('path');
|
|
344
|
-
const yargs = require('yargs');
|
|
345
|
-
const webpack = require('webpack');
|
|
346
|
-
const TerserPlugin = require('terser-webpack-plugin');
|
|
347
|
-
const NativeWebpackPlugin = require('@theia/native-webpack-plugin');
|
|
348
|
-
const { MonacoWebpackPlugin } = require('@theia/native-webpack-plugin/lib/monaco-webpack-plugins.js');
|
|
349
|
-
|
|
350
|
-
const { mode } = yargs.option('mode', {
|
|
351
|
-
description: "Mode to use",
|
|
352
|
-
choices: ["development", "production"],
|
|
353
|
-
default: "production"
|
|
354
|
-
}).argv;
|
|
355
|
-
|
|
356
|
-
const production = mode === 'production';
|
|
357
|
-
|
|
358
|
-
/** @type {import('webpack').EntryObject} */
|
|
359
|
-
const commonJsLibraries = {};
|
|
360
|
-
for (const [entryPointName, entryPointPath] of Object.entries({
|
|
361
|
-
${this.ifPackage('@theia/plugin-ext', "'backend-init-theia': '@theia/plugin-ext/lib/hosted/node/scanners/backend-init-theia',")}
|
|
362
|
-
${this.ifPackage('@theia/filesystem', "'parcel-watcher': '@theia/filesystem/lib/node/parcel-watcher',")}
|
|
363
|
-
${this.ifPackage('@theia/plugin-ext-vscode', "'plugin-vscode-init': '@theia/plugin-ext-vscode/lib/node/plugin-vscode-init',")}
|
|
364
|
-
${this.ifPackage('@theia/api-provider-sample', "'gotd-api-init': '@theia/api-provider-sample/lib/plugin/gotd-api-init',")}
|
|
365
|
-
${this.ifPackage('@theia/git', "'git-locator-host': '@theia/git/lib/node/git-locator/git-locator-host',")}
|
|
366
|
-
})) {
|
|
367
|
-
commonJsLibraries[entryPointName] = {
|
|
368
|
-
import: require.resolve(entryPointPath),
|
|
369
|
-
library: {
|
|
370
|
-
type: 'commonjs2',
|
|
371
|
-
},
|
|
372
|
-
};
|
|
373
|
-
}
|
|
374
|
-
|
|
375
|
-
const ignoredResources = new Set();
|
|
376
|
-
|
|
377
|
-
if (process.platform !== 'win32') {
|
|
378
|
-
ignoredResources.add('@vscode/windows-ca-certs');
|
|
379
|
-
ignoredResources.add('@vscode/windows-ca-certs/build/Release/crypt32.node');
|
|
380
|
-
}
|
|
381
|
-
|
|
382
|
-
const nativePlugin = new NativeWebpackPlugin({
|
|
383
|
-
out: 'native',
|
|
384
|
-
trash: ${this.ifPackage('@theia/filesystem', 'true', 'false')},
|
|
385
|
-
ripgrep: ${this.ifPackage(['@theia/search-in-workspace', '@theia/file-search'], 'true', 'false')},
|
|
386
|
-
pty: ${this.ifPackage('@theia/process', 'true', 'false')},
|
|
387
|
-
nativeBindings: {
|
|
388
|
-
drivelist: 'drivelist/build/Release/drivelist.node'
|
|
389
|
-
}
|
|
390
|
-
});
|
|
391
|
-
|
|
392
|
-
${this.ifPackage('@theia/process', () => `// Ensure that node-pty is correctly hoisted
|
|
393
|
-
try {
|
|
394
|
-
require.resolve('node-pty');
|
|
395
|
-
} catch {
|
|
396
|
-
console.error('"node-pty" dependency is not installed correctly. Ensure that it is available in the root node_modules directory.');
|
|
397
|
-
console.error('Exiting webpack build process.');
|
|
398
|
-
process.exit(1);
|
|
399
|
-
}`)}
|
|
400
|
-
|
|
401
|
-
/** @type {import('webpack').Configuration} */
|
|
402
|
-
const config = {
|
|
403
|
-
mode,
|
|
404
|
-
devtool: mode === 'development' ? 'source-map' : false,
|
|
405
|
-
target: 'node',
|
|
406
|
-
node: {
|
|
407
|
-
global: false,
|
|
408
|
-
__filename: false,
|
|
409
|
-
__dirname: false
|
|
410
|
-
},
|
|
411
|
-
resolve: {
|
|
412
|
-
extensions: ['.js', '.json', '.wasm', '.node'],
|
|
413
|
-
},
|
|
414
|
-
output: {
|
|
415
|
-
filename: '[name].js',
|
|
416
|
-
path: path.resolve(__dirname, 'lib', 'backend'),
|
|
417
|
-
devtoolModuleFilenameTemplate: 'webpack:///[absolute-resource-path]?[loaders]',
|
|
418
|
-
},${this.ifElectron(`
|
|
419
|
-
externals: {
|
|
420
|
-
electron: 'require("electron")'
|
|
421
|
-
},`)}
|
|
422
|
-
entry: {
|
|
423
|
-
// Main entry point of the Theia application backend:
|
|
424
|
-
'main': require.resolve('./src-gen/backend/main'),
|
|
425
|
-
// Theia's IPC mechanism:
|
|
426
|
-
'ipc-bootstrap': require.resolve('@theia/core/lib/node/messaging/ipc-bootstrap'),
|
|
427
|
-
${this.ifPackage('@theia/plugin-ext', () => `// VS Code extension support:
|
|
428
|
-
'plugin-host': require.resolve('@theia/plugin-ext/lib/hosted/node/plugin-host'),`)}
|
|
429
|
-
${this.ifPackage('@theia/plugin-ext-headless', () => `// Theia Headless Plugin support:
|
|
430
|
-
'plugin-host-headless': require.resolve('@theia/plugin-ext-headless/lib/hosted/node/plugin-host-headless'),`)}
|
|
431
|
-
${this.ifPackage('@theia/process', () => `// Make sure the node-pty thread worker can be executed:
|
|
432
|
-
'worker/conoutSocketWorker': require.resolve('node-pty/lib/worker/conoutSocketWorker'),`)}
|
|
433
|
-
${this.ifElectron("'electron-main': require.resolve('./src-gen/backend/electron-main'),")}
|
|
434
|
-
${this.ifPackage('@theia/dev-container', () => `// VS Code Dev-Container communication:
|
|
435
|
-
'dev-container-server': require.resolve('@theia/dev-container/lib/dev-container-server/dev-container-server'),`)}
|
|
436
|
-
...commonJsLibraries
|
|
437
|
-
},
|
|
438
|
-
module: {
|
|
439
|
-
rules: [
|
|
440
|
-
// Make sure we can still find and load our native addons.
|
|
441
|
-
{
|
|
442
|
-
test: /\\.node$/,
|
|
443
|
-
loader: 'node-loader',
|
|
444
|
-
options: {
|
|
445
|
-
name: 'native/[name].[ext]'
|
|
446
|
-
}
|
|
447
|
-
},
|
|
448
|
-
{
|
|
449
|
-
test: /\\.d\\.ts$/,
|
|
450
|
-
loader: 'ignore-loader'
|
|
451
|
-
},
|
|
452
|
-
{
|
|
453
|
-
test: /\\.js$/,
|
|
454
|
-
enforce: 'pre',
|
|
455
|
-
loader: 'source-map-loader'
|
|
456
|
-
},
|
|
457
|
-
// jsonc-parser exposes its UMD implementation by default, which
|
|
458
|
-
// confuses Webpack leading to missing js in the bundles.
|
|
459
|
-
{
|
|
460
|
-
test: /node_modules[\\/](jsonc-parser)/,
|
|
461
|
-
loader: 'umd-compat-loader'
|
|
462
|
-
}
|
|
463
|
-
]
|
|
464
|
-
},
|
|
465
|
-
plugins: [
|
|
466
|
-
// Some native dependencies need special handling
|
|
467
|
-
nativePlugin,
|
|
468
|
-
// Optional node dependencies can be safely ignored
|
|
469
|
-
new webpack.IgnorePlugin({
|
|
470
|
-
checkResource: resource => ignoredResources.has(resource)
|
|
471
|
-
}),
|
|
472
|
-
new MonacoWebpackPlugin()
|
|
473
|
-
],
|
|
474
|
-
optimization: {
|
|
475
|
-
// Split and reuse code across the various entry points
|
|
476
|
-
splitChunks: {
|
|
477
|
-
chunks: 'all'
|
|
478
|
-
},
|
|
479
|
-
// Only minimize if we run webpack in production mode
|
|
480
|
-
minimize: production,
|
|
481
|
-
minimizer: [
|
|
482
|
-
new TerserPlugin({
|
|
483
|
-
exclude: /^(lib|builtins)\\//${this.ifPackage(['@theia/scanoss', '@theia/ai-anthropic', '@theia/ai-openai'], () => `,
|
|
484
|
-
terserOptions: {
|
|
485
|
-
keep_classnames: /AbortSignal/
|
|
486
|
-
}`)}
|
|
487
|
-
})
|
|
488
|
-
]
|
|
489
|
-
},
|
|
490
|
-
ignoreWarnings: [
|
|
491
|
-
// Some packages do not have source maps, that's ok
|
|
492
|
-
/Failed to parse source map/,
|
|
493
|
-
// require with expressions are not supported
|
|
494
|
-
/the request of a dependency is an expression/,
|
|
495
|
-
// Some packages use dynamic requires, we can safely ignore them (they are handled by the native webpack plugin)
|
|
496
|
-
/require function is used in a way in which dependencies cannot be statically extracted/, {
|
|
497
|
-
module: /yargs/
|
|
498
|
-
}, {
|
|
499
|
-
module: /node-pty/
|
|
500
|
-
}, {
|
|
501
|
-
module: /require-main-filename/
|
|
502
|
-
}, {
|
|
503
|
-
module: /ws/
|
|
504
|
-
}, {
|
|
505
|
-
module: /express/
|
|
506
|
-
}, {
|
|
507
|
-
module: /cross-spawn/
|
|
508
|
-
}, {
|
|
509
|
-
module: /@parcel\\/watcher/
|
|
510
|
-
}
|
|
511
|
-
]
|
|
512
|
-
};
|
|
513
|
-
|
|
514
|
-
module.exports = {
|
|
515
|
-
config,
|
|
516
|
-
nativePlugin,
|
|
517
|
-
ignoredResources
|
|
518
|
-
};
|
|
519
|
-
`;
|
|
520
|
-
}
|
|
521
|
-
}
|
|
522
|
-
exports.WebpackGenerator = WebpackGenerator;
|
|
523
|
-
//# sourceMappingURL=webpack-generator.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"webpack-generator.js","sourceRoot":"","sources":["../../src/generator/webpack-generator.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,yCAAyC;AACzC,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;;;AAEhF,8BAA8B;AAC9B,+BAA+B;AAC/B,6DAAyD;AAEzD,MAAa,gBAAiB,SAAQ,sCAAiB;IAEnD,KAAK,CAAC,QAAQ;QACV,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,oBAAoB,EAAE,CAAC,CAAC;QAClE,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,EAAE,CAAC;YAC5B,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,iBAAiB,EAAE,IAAI,CAAC,wBAAwB,EAAE,CAAC,CAAC;QAC9E,CAAC;QACD,IAAI,MAAM,IAAI,CAAC,+BAA+B,EAAE,EAAE,CAAC;YAC/C,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,wBAAwB,EAAE,CAAC,CAAC;QACvE,CAAC;IACL,CAAC;IAES,KAAK,CAAC,+BAA+B;QAC3C,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC;YAC1C,OAAO,IAAI,CAAC;QAChB,CAAC;QACD,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;QAC3D,OAAO,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC;IACjD,CAAC;IAED,IAAI,UAAU;QACV,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;IAC9C,CAAC;IAED,IAAI,aAAa;QACb,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;IAClD,CAAC;IAED,IAAI,iBAAiB;QACjB,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC;IACvD,CAAC;IAES,oBAAoB;QAC1B,OAAO;;+CAEgC,IAAI,CAAC,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;eA8B/C,IAAI,CAAC,SAAS,CAAC,mBAAmB,EAAE;;;;;cAKrC,CAAC;cACD,IAAI,CAAC,SAAS,CAAC,0BAA0B,EAAE;;;;;cAK3C,CAAC;;;;;;;;;;;;;;;;;;;;UAoBL,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,6EAA6E,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqLzG,IAAI,CAAC,UAAU,CAAC;;;;;;;;;;;;;;;;;;EAkBjB,CAAC,IAAI,CAAC;IACJ,CAAC;IAES,wBAAwB;QAC9B,OAAO;;;;;6BAKc,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC;EAC7D,IAAI,CAAC,aAAa,CAAC,EAAE,EAAE,iCAAiC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC;;;;;;;;;;;EAWpG,IAAI,CAAC,aAAa,CAAC,2BAA2B,EAAE;;;GAG/C,CAAC;CACH,CAAC;IACE,CAAC;IAES,wBAAwB;QAC9B,OAAO;;+CAEgC,IAAI,CAAC,UAAU;;;;;;;;;;;;;;;;;;;;;MAqBxD,IAAI,CAAC,SAAS,CAAC,mBAAmB,EAAE,wFAAwF,CAAC;MAC7H,IAAI,CAAC,SAAS,CAAC,mBAAmB,EAAE,gEAAgE,CAAC;MACrG,IAAI,CAAC,SAAS,CAAC,0BAA0B,EAAE,+EAA+E,CAAC;MAC3H,IAAI,CAAC,SAAS,CAAC,4BAA4B,EAAE,yEAAyE,CAAC;MACvH,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,yEAAyE,CAAC;;;;;;;;;;;;;;;;;;;aAmBhG,IAAI,CAAC,SAAS,CAAC,mBAAmB,EAAE,MAAM,EAAE,OAAO,CAAC;eAClD,IAAI,CAAC,SAAS,CAAC,CAAC,4BAA4B,EAAE,oBAAoB,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC;WACzF,IAAI,CAAC,SAAS,CAAC,gBAAgB,EAAE,MAAM,EAAE,OAAO,CAAC;;;;;;EAM1D,IAAI,CAAC,SAAS,CAAC,gBAAgB,EAAE,GAAG,EAAE,CAAC;;;;;;;EAOvC,CAAC;;;;;;;;;;;;;;;;;;;QAmBK,IAAI,CAAC,UAAU,CAAC;;;OAGjB,CAAC;;;;;;UAME,IAAI,CAAC,SAAS,CAAC,mBAAmB,EAAE,GAAG,EAAE,CAAC;yFACqC,CAAC;UAChF,IAAI,CAAC,SAAS,CAAC,4BAA4B,EAAE,GAAG,EAAE,CAAC;oHACuD,CAAC;UAC3G,IAAI,CAAC,SAAS,CAAC,gBAAgB,EAAE,GAAG,EAAE,CAAC;gGAC+C,CAAC;UACvF,IAAI,CAAC,UAAU,CAAC,sEAAsE,CAAC;UACvF,IAAI,CAAC,SAAS,CAAC,sBAAsB,EAAE,GAAG,EAAE,CAAC;uHACgE,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;+CAgDzE,IAAI,CAAC,SAAS,CAAC,CAAC,gBAAgB,EAAE,qBAAqB,EAAE,kBAAkB,CAAC,EAAE,GAAG,EAAE,CAAC;;;kBAGjH,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiClB,CAAC;IACE,CAAC;CAEJ;AA5fD,4CA4fC"}
|
package/lib/index.d.ts
DELETED
package/lib/index.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAgBA,cAAc,WAAW,CAAC;AAC1B,cAAc,+BAA+B,CAAC;AAC9C,cAAc,uBAAuB,CAAC"}
|
package/lib/index.js
DELETED
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
// *****************************************************************************
|
|
3
|
-
// Copyright (C) 2018 Ericsson and others.
|
|
4
|
-
//
|
|
5
|
-
// This program and the accompanying materials are made available under the
|
|
6
|
-
// terms of the Eclipse Public License v. 2.0 which is available at
|
|
7
|
-
// http://www.eclipse.org/legal/epl-2.0.
|
|
8
|
-
//
|
|
9
|
-
// This Source Code may also be made available under the following Secondary
|
|
10
|
-
// Licenses when the conditions for such availability set forth in the Eclipse
|
|
11
|
-
// Public License v. 2.0 are satisfied: GNU General Public License, version 2
|
|
12
|
-
// with the GNU Classpath Exception which is available at
|
|
13
|
-
// https://www.gnu.org/software/classpath/license.html.
|
|
14
|
-
//
|
|
15
|
-
// SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
|
|
16
|
-
// *****************************************************************************
|
|
17
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
-
const tslib_1 = require("tslib");
|
|
19
|
-
tslib_1.__exportStar(require("./rebuild"), exports);
|
|
20
|
-
tslib_1.__exportStar(require("./application-package-manager"), exports);
|
|
21
|
-
tslib_1.__exportStar(require("./application-process"), exports);
|
|
22
|
-
//# sourceMappingURL=index.js.map
|
package/lib/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,0CAA0C;AAC1C,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;;;AAEhF,oDAA0B;AAC1B,wEAA8C;AAC9C,gEAAsC"}
|
package/lib/package.spec.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
//# sourceMappingURL=package.spec.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"package.spec.d.ts","sourceRoot":"","sources":["../src/package.spec.ts"],"names":[],"mappings":""}
|
package/lib/package.spec.js
DELETED
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
// *****************************************************************************
|
|
2
|
-
// Copyright (C) 2018 Ericsson and others.
|
|
3
|
-
//
|
|
4
|
-
// This program and the accompanying materials are made available under the
|
|
5
|
-
// terms of the Eclipse Public License v. 2.0 which is available at
|
|
6
|
-
// http://www.eclipse.org/legal/epl-2.0.
|
|
7
|
-
//
|
|
8
|
-
// This Source Code may also be made available under the following Secondary
|
|
9
|
-
// Licenses when the conditions for such availability set forth in the Eclipse
|
|
10
|
-
// Public License v. 2.0 are satisfied: GNU General Public License, version 2
|
|
11
|
-
// with the GNU Classpath Exception which is available at
|
|
12
|
-
// https://www.gnu.org/software/classpath/license.html.
|
|
13
|
-
//
|
|
14
|
-
// SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
|
|
15
|
-
// *****************************************************************************
|
|
16
|
-
/* note: this bogus test file is required so that
|
|
17
|
-
we are able to run mocha unit tests on this
|
|
18
|
-
package, without having any actual unit tests in it.
|
|
19
|
-
This way a coverage report will be generated,
|
|
20
|
-
showing 0% coverage, instead of no report.
|
|
21
|
-
This file can be removed once we have real unit
|
|
22
|
-
tests in place. */
|
|
23
|
-
describe('application-manager package', () => {
|
|
24
|
-
it('should support code coverage statistics', () => true);
|
|
25
|
-
});
|
|
26
|
-
//# sourceMappingURL=package.spec.js.map
|
package/lib/package.spec.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"package.spec.js","sourceRoot":"","sources":["../src/package.spec.ts"],"names":[],"mappings":"AAAA,gFAAgF;AAChF,0CAA0C;AAC1C,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;AAEhF;;;;;;qBAMqB;AAErB,QAAQ,CAAC,6BAA6B,EAAE,GAAG,EAAE;IAEzC,EAAE,CAAC,yCAAyC,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;AAC9D,CAAC,CAAC,CAAC"}
|
package/lib/rebuild.d.ts
DELETED
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
export type RebuildTarget = 'electron' | 'browser' | 'browser-only';
|
|
2
|
-
type NodeABI = string | number;
|
|
3
|
-
export declare const DEFAULT_MODULES: string[];
|
|
4
|
-
export interface RebuildOptions {
|
|
5
|
-
/**
|
|
6
|
-
* What modules to rebuild.
|
|
7
|
-
*/
|
|
8
|
-
modules?: string[];
|
|
9
|
-
/**
|
|
10
|
-
* Folder where the module cache will be created/read from.
|
|
11
|
-
*/
|
|
12
|
-
cacheRoot?: string;
|
|
13
|
-
/**
|
|
14
|
-
* In the event that `node-abi` doesn't recognize the current Electron version,
|
|
15
|
-
* you can specify the Node ABI to rebuild for.
|
|
16
|
-
*/
|
|
17
|
-
forceAbi?: NodeABI;
|
|
18
|
-
}
|
|
19
|
-
/**
|
|
20
|
-
* @param target What to rebuild for.
|
|
21
|
-
* @param options
|
|
22
|
-
*/
|
|
23
|
-
export declare function rebuild(target: RebuildTarget, options?: RebuildOptions): void;
|
|
24
|
-
export {};
|
|
25
|
-
//# sourceMappingURL=rebuild.d.ts.map
|
package/lib/rebuild.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"rebuild.d.ts","sourceRoot":"","sources":["../src/rebuild.ts"],"names":[],"mappings":"AAqBA,MAAM,MAAM,aAAa,GAAG,UAAU,GAAG,SAAS,GAAG,cAAc,CAAC;AASpE,KAAK,OAAO,GAAG,MAAM,GAAG,MAAM,CAAC;AAE/B,eAAO,MAAM,eAAe,UAQ3B,CAAC;AAEF,MAAM,WAAW,cAAc;IAC3B;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;IAClB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAA;CACrB;AAED;;;GAGG;AACH,wBAAgB,OAAO,CAAC,MAAM,EAAE,aAAa,EAAE,OAAO,GAAE,cAAmB,GAAG,IAAI,CAuBjF"}
|