Adding material icon theme submodule and patches.

This commit is contained in:
2023-09-06 10:03:05 -06:00
parent 492a559279
commit febc5cf2b2
18 changed files with 8495 additions and 0 deletions

View File

@ -0,0 +1,62 @@
/*---------------------------------------------------------------------------------------------
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the MIT License. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/
//@ts-check
'use strict';
//@ts-check
/** @typedef {import('webpack').Configuration} WebpackConfig **/
const path = require('path');
const webpack = require('webpack');
module.exports = /** @type WebpackConfig */ {
context: path.dirname(__dirname),
mode: 'none', // this leaves the source code as close as possible to the original (when packaging we set this to 'production')
target: 'webworker', // extensions run in a webworker context
entry: {
extension: './material-icon-theme/src/web/extension.ts',
},
resolve: {
mainFields: ['browser', 'module', 'main'],
extensions: ['.ts', '.js'], // support ts-files and js-files
alias: {},
fallback: {
assert: require.resolve('assert'),
path: false,
fs: false,
},
},
module: {
rules: [
{
test: /\.ts$/,
exclude: /node_modules/,
use: [
{
loader: 'ts-loader',
},
],
},
],
},
plugins: [
new webpack.ProvidePlugin({
process: 'process/browser',
}),
],
externals: {
vscode: 'commonjs vscode', // ignored because it doesn't exist
},
performance: {
hints: false,
},
output: {
filename: '[name].js',
path: path.join(__dirname, '../dist/web'),
libraryTarget: 'commonjs',
},
devtool: 'nosources-source-map',
};

53
build/webpack.config.js Normal file
View File

@ -0,0 +1,53 @@
'use strict';
const path = require('path');
const CopyPlugin = require('copy-webpack-plugin');
const ROOT_DIR = path.resolve(__dirname);
const copyPatterns = [
{
from: `${ROOT_DIR}/../fonts/fira-code-vf.woff`, to: '[name][ext]',
}
];
/** @type {import('webpack').Configuration} */
const config = {
context: path.dirname(__dirname),
target: 'node',
node: {
__dirname: false,
__filename: false,
},
entry: './material-icon-theme/src/extension.ts',
output: {
path: path.resolve(__dirname, '../dist'),
filename: 'extension.js',
libraryTarget: 'commonjs2',
devtoolModuleFilenameTemplate: '../[resource-path]',
clean: true,
},
devtool: 'source-map',
externals: {
vscode: 'commonjs vscode',
},
resolve: {
extensions: ['.ts', '.js'],
},
module: {
rules: [
{
test: /\.ts$/,
exclude: /node_modules/,
use: 'ts-loader',
},
],
},
plugins: [
new CopyPlugin({
patterns: copyPatterns
}),
],
};
module.exports = config;