Have 2 bundles
This commit is contained in:
parent
258c1e6ff0
commit
c38b7c9972
3 changed files with 78 additions and 57 deletions
3
reconcile-js/package-lock.json
generated
3
reconcile-js/package-lock.json
generated
|
|
@ -17,7 +17,8 @@
|
||||||
"tslib": "2.8.1",
|
"tslib": "2.8.1",
|
||||||
"typescript": "5.8.3",
|
"typescript": "5.8.3",
|
||||||
"webpack": "^5.99.9",
|
"webpack": "^5.99.9",
|
||||||
"webpack-cli": "^6.0.1"
|
"webpack-cli": "^6.0.1",
|
||||||
|
"webpack-merge": "^6.0.1"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"../pkg": {
|
"../pkg": {
|
||||||
|
|
|
||||||
|
|
@ -1,26 +1,28 @@
|
||||||
{
|
{
|
||||||
"name": "reconcile",
|
"name": "reconcile",
|
||||||
"version": "0.4.0",
|
"version": "0.4.0",
|
||||||
"main": "dist/index.js",
|
"main": "dist/reconcile.node.js",
|
||||||
"types": "dist/types/index.d.ts",
|
"browser": "dist/reconcile.web.js",
|
||||||
"files": [
|
"types": "dist/types/index.d.ts",
|
||||||
"dist/*"
|
"files": [
|
||||||
],
|
"dist/**/*"
|
||||||
"scripts": {
|
],
|
||||||
"build": "webpack --mode production",
|
"scripts": {
|
||||||
"format": "prettier --write \"./**/*.(ts|scss|json|html)\"",
|
"build": "webpack --mode production",
|
||||||
"test": "NODE_OPTIONS=\"$NODE_OPTIONS --experimental-vm-modules\" jest"
|
"format": "prettier --write \"./**/*.(ts|scss|json|html)\"",
|
||||||
},
|
"test": "NODE_OPTIONS=\"$NODE_OPTIONS --experimental-vm-modules\" jest"
|
||||||
"devDependencies": {
|
},
|
||||||
"@types/jest": "^30.0.0",
|
"devDependencies": {
|
||||||
"jest": "^30.0.4",
|
"@types/jest": "^30.0.0",
|
||||||
"reconcile": "file:../pkg",
|
"jest": "^30.0.4",
|
||||||
"ts-jest": "^29.4.0",
|
"prettier": "^3.6.2",
|
||||||
"ts-loader": "^9.5.2",
|
"reconcile": "file:../pkg",
|
||||||
"tslib": "2.8.1",
|
"ts-jest": "^29.4.0",
|
||||||
"typescript": "5.8.3",
|
"ts-loader": "^9.5.2",
|
||||||
"webpack": "^5.99.9",
|
"tslib": "2.8.1",
|
||||||
"webpack-cli": "^6.0.1",
|
"typescript": "5.8.3",
|
||||||
"prettier": "^3.6.2"
|
"webpack": "^5.99.9",
|
||||||
}
|
"webpack-cli": "^6.0.1",
|
||||||
|
"webpack-merge": "^6.0.1"
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,37 +1,55 @@
|
||||||
const path = require("path");
|
const path = require('path');
|
||||||
|
const { merge } = require('webpack-merge');
|
||||||
|
|
||||||
|
const common = {
|
||||||
module.exports = {
|
entry: './src/index.ts',
|
||||||
entry: "./src/index.ts",
|
module: {
|
||||||
module: {
|
rules: [
|
||||||
rules: [
|
{
|
||||||
{
|
test: /\.ts$/,
|
||||||
test: /\.ts$/,
|
use: ['ts-loader'],
|
||||||
use: ["ts-loader"]
|
},
|
||||||
},
|
{
|
||||||
{
|
test: /\.wasm$/,
|
||||||
test: /\.wasm$/,
|
type: 'asset/inline',
|
||||||
type: "asset/inline"
|
},
|
||||||
}
|
],
|
||||||
]
|
},
|
||||||
},
|
optimization: {
|
||||||
optimization: {
|
// the consuming project should take care of minification
|
||||||
// the consuming project should take care of minification
|
minimize: false,
|
||||||
minimize: false
|
},
|
||||||
},
|
resolve: {
|
||||||
resolve: {
|
extensions: ['.ts', '.js'],
|
||||||
extensions: [".ts"],
|
alias: {
|
||||||
alias: {
|
root: __dirname,
|
||||||
root: __dirname,
|
src: path.resolve(__dirname, 'src'),
|
||||||
src: path.resolve(__dirname, "src")
|
|
||||||
}
|
|
||||||
},
|
|
||||||
output: {
|
|
||||||
path: path.resolve(__dirname, "dist"),
|
|
||||||
filename: "index.js",
|
|
||||||
libraryTarget: "module"
|
|
||||||
},
|
|
||||||
experiments: {
|
|
||||||
outputModule: true
|
|
||||||
},
|
},
|
||||||
|
},
|
||||||
|
performance: {
|
||||||
|
hints: false, // it's a library, no need to warn about its size
|
||||||
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
|
module.exports = [
|
||||||
|
merge(common, {
|
||||||
|
target: 'web',
|
||||||
|
output: {
|
||||||
|
path: path.resolve(__dirname, 'dist'),
|
||||||
|
filename: 'reconcile.web.js',
|
||||||
|
library: {
|
||||||
|
name: 'reconcile',
|
||||||
|
type: 'umd',
|
||||||
|
},
|
||||||
|
globalObject: 'this',
|
||||||
|
},
|
||||||
|
}),
|
||||||
|
merge(common, {
|
||||||
|
target: 'node',
|
||||||
|
output: {
|
||||||
|
path: path.resolve(__dirname, 'dist'),
|
||||||
|
filename: 'reconcile.node.js',
|
||||||
|
libraryTarget: 'commonjs2',
|
||||||
|
},
|
||||||
|
}),
|
||||||
|
];
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue