@twobirds/microcomponents
Version:
Micro Components Organization Class
347 lines (345 loc) • 7.77 kB
JavaScript
const path = require('path');
module.exports = [
{
entry: './build/MC.js',
mode: 'production',
output: {
path: path.resolve(__dirname, 'dist'),
filename: 'MC.min.js',
libraryTarget: 'umd',
library: 'MC',
globalObject: 'this',
},
module: {
rules: [
{
// test: /\.tsx?$/,
use: [
{
loader: 'ts-loader',
options: {
transpileOnly: true, // Avoid type checking during webpack build
compilerOptions: {
declaration: false, // Generate .d.ts files
declarationMap: false, // Generate .d.ts.map files
outDir: 'build/types', // Output .d.ts and .d.ts.map to a different directory
},
},
},
],
exclude: /node_modules/,
},
],
},
resolve: {
extensions: ['.tsx', '.ts', '.js'],
},
optimization: {
minimize: false, // Enable minification
},
},
{
entry: './build/elements.js',
mode: 'production',
output: {
path: path.resolve(__dirname, 'dist'),
filename: 'elements.min.js',
libraryTarget: 'umd',
library: 'elements',
globalObject: 'this',
},
module: {
rules: [
{
// test: /\.tsx?$/,
use: [
{
loader: 'ts-loader',
options: {
transpileOnly: true, // Avoid type checking during webpack build
compilerOptions: {
declaration: false, // Generate .d.ts files
declarationMap: false, // Generate .d.ts.map files
outDir: 'build/types', // Output .d.ts and .d.ts.map to a different directory
},
},
},
],
exclude: /node_modules/,
},
],
},
resolve: {
extensions: ['.tsx', '.ts', '.js'],
},
optimization: {
minimize: true, // Enable minification
},
},
{
entry: './build/selectors.js',
mode: 'production',
output: {
path: path.resolve(__dirname, 'dist'),
filename: 'selectors.min.js',
libraryTarget: 'umd',
library: 'selectors',
globalObject: 'this',
},
module: {
rules: [
{
// test: /\.tsx?$/,
use: [
{
loader: 'ts-loader',
options: {
transpileOnly: true, // Avoid type checking during webpack build
compilerOptions: {
declaration: false, // Generate .d.ts files
declarationMap: false, // Generate .d.ts.map files
outDir: 'build/types', // Output .d.ts and .d.ts.map to a different directory
},
},
},
],
exclude: /node_modules/,
},
],
},
resolve: {
extensions: ['.tsx', '.ts', '.js'],
},
optimization: {
minimize: true, // Enable minification
},
},
{
entry: './build/formValues.js',
mode: 'production',
output: {
path: path.resolve(__dirname, 'dist'),
filename: 'formValues.min.js',
libraryTarget: 'umd',
library: 'formValues',
globalObject: 'this',
},
module: {
rules: [
{
// test: /\.tsx?$/,
use: [
{
loader: 'ts-loader',
options: {
transpileOnly: true, // Avoid type checking during webpack build
compilerOptions: {
declaration: false, // Generate .d.ts files
declarationMap: false, // Generate .d.ts.map files
outDir: 'build/types', // Output .d.ts and .d.ts.map to a different directory
},
},
},
],
exclude: /node_modules/,
},
],
},
resolve: {
extensions: ['.tsx', '.ts', '.js'],
},
optimization: {
minimize: true, // Enable minification
},
},
{
entry: './build/observables.js',
mode: 'production',
output: {
path: path.resolve(__dirname, 'dist'),
filename: 'observables.min.js',
libraryTarget: 'umd',
library: 'observables',
globalObject: 'this',
},
module: {
rules: [
{
// test: /\.tsx?$/,
use: [
{
loader: 'ts-loader',
options: {
transpileOnly: true, // Avoid type checking during webpack build
compilerOptions: {
declaration: false, // Generate .d.ts files
declarationMap: false, // Generate .d.ts.map files
outDir: 'build/types', // Output .d.ts and .d.ts.map to a different directory
},
},
},
],
exclude: /node_modules/,
},
],
},
resolve: {
extensions: ['.tsx', '.ts', '.js'],
},
optimization: {
minimize: true, // Enable minification
},
},
// bundle files
{
entry: './build/microcomponents.js',
mode: 'production',
output: {
path: path.resolve(__dirname, 'dist'),
filename: 'microcomponents.min.js',
libraryTarget: 'umd',
library: 'microcomponents',
globalObject: 'this',
},
module: {
rules: [
{
// test: /\.tsx?$/,
use: [
{
loader: 'ts-loader',
options: {
transpileOnly: true, // Avoid type checking during webpack build
compilerOptions: {
declaration: false, // Generate .d.ts files
declarationMap: false, // Generate .d.ts.map files
outDir: 'build/types', // Output .d.ts and .d.ts.map to a different directory
},
},
},
],
exclude: /node_modules/,
},
],
},
resolve: {
extensions: ['.tsx', '.ts', '.js'],
},
optimization: {
minimize: true, // Enable minification
},
},
{
entry: './build/test/test/grandparent.js',
mode: 'production',
output: {
path: path.resolve(__dirname, 'build/test/test'),
filename: 'grandparent.js',
libraryTarget: 'umd',
library: 'grandparent',
},
module: {
rules: [
{
// test: /\.tsx?$/,
use: [
{
loader: 'ts-loader',
options: {
transpileOnly: true, // Avoid type checking during webpack build
compilerOptions: {
declaration: false, // Generate .d.ts files
declarationMap: false, // Generate .d.ts.map files
outDir: 'build/types', // Output .d.ts and .d.ts.map to a different directory
},
},
},
],
exclude: /node_modules/,
},
],
},
resolve: {
extensions: ['.tsx', '.ts', '.js'],
},
optimization: {
minimize: true, // Enable minification
},
},
{
entry: './build/test/test/testform.js',
mode: 'production',
output: {
path: path.resolve(__dirname, 'build/test/test'),
filename: 'testform.js',
libraryTarget: 'umd',
library: 'TestTestform',
},
module: {
rules: [
{
// test: /\.tsx?$/,
use: [
{
loader: 'ts-loader',
options: {
transpileOnly: true, // Avoid type checking during webpack build
compilerOptions: {
declaration: false, // Generate .d.ts files
declarationMap: false, // Generate .d.ts.map files
outDir: 'build/types', // Output .d.ts and .d.ts.map to a different directory
},
},
},
],
exclude: /node_modules/,
},
],
},
resolve: {
extensions: ['.tsx', '.ts', '.js'],
},
optimization: {
minimize: true, // Enable minification
},
},
/*
{
entry: './build/test/default.js',
mode: 'production',
output: {
path: path.resolve(__dirname, 'public/test'),
filename: 'default.js',
libraryTarget: 'umd',
library: 'default',
},
module: {
rules: [
{
// test: /\.tsx?$/,
use: [
{
loader: 'ts-loader',
options: {
transpileOnly: true, // Avoid type checking during webpack build
compilerOptions: {
declaration: false, // Generate .d.ts files
declarationMap: false, // Generate .d.ts.map files
outDir: 'build/types', // Output .d.ts and .d.ts.map to a different directory
},
},
},
],
exclude: /node_modules/,
},
],
},
resolve: {
extensions: ['.tsx', '.ts', '.js'],
},
optimization: {
minimize: true, // Enable minification
},
},
*/
];