catalyst-core-internal 0.0.1-beta.56 → 0.0.1-beta.58
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/babel.config.js +1 -6
- package/changelog.md +4 -2
- package/dist/scripts/start.js +4 -4
- package/dist/scripts/start.test.js +22 -0
- package/dist/server/renderer/index.js +1 -1
- package/dist/server/startServer.js +1 -1
- package/dist/webpack/babel.config.client.js +1 -1
- package/dist/webpack/babel.config.ssr.js +1 -1
- package/dist/webpack/development.client.babel.js +2 -17
- package/dist/webpack/production.client.babel.js +1 -1
- package/dist/webpack/production.ssr.babel.js +2 -2
- package/package.json +1 -1
- package/run.sh +2 -2
package/babel.config.js
CHANGED
|
@@ -1,8 +1,6 @@
|
|
|
1
1
|
module.exports = (api) => {
|
|
2
2
|
api.cache(true)
|
|
3
3
|
|
|
4
|
-
const EXPERIMENTS = JSON.parse(process.env.EXPERIMENTS || "{}")
|
|
5
|
-
|
|
6
4
|
return {
|
|
7
5
|
presets: [
|
|
8
6
|
[
|
|
@@ -23,10 +21,7 @@ module.exports = (api) => {
|
|
|
23
21
|
["@babel/preset-react", { runtime: "automatic" }],
|
|
24
22
|
],
|
|
25
23
|
compact: true,
|
|
26
|
-
plugins: [
|
|
27
|
-
...(EXPERIMENTS?.ENABLE_COMPILER ? [["babel-plugin-react-compiler", { target: "18" }]] : []),
|
|
28
|
-
"@loadable/babel-plugin",
|
|
29
|
-
],
|
|
24
|
+
plugins: ["@loadable/babel-plugin"],
|
|
30
25
|
env: {
|
|
31
26
|
test: {
|
|
32
27
|
presets: ["@babel/preset-react"],
|
package/changelog.md
CHANGED
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
-
## [0.0.1-beta.11] -
|
|
3
|
+
## [0.0.1-beta.11] - 21-02-2024
|
|
4
4
|
|
|
5
|
-
- Add support for
|
|
5
|
+
- Add support for custom react compiler config
|
|
6
6
|
- Add support for typescript
|
|
7
|
+
- Fix json import issue
|
|
8
|
+
- Fix common name module conflict issue
|
|
7
9
|
|
|
8
10
|
## [0.0.1-beta.10] - 06-02-2024
|
|
9
11
|
|
package/dist/scripts/start.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
"use strict";const
|
|
1
|
+
"use strict";const path=require("path");const{spawnSync,spawn}=require("child_process");const{arrayToObject}=require("./scriptUtils");const{name}=require(`${process.cwd()}/package.json`);const{BUILD_OUTPUT_PATH}=require(`${process.cwd()}/config/config.json`);/**
|
|
2
2
|
* @description - starts webpack dev server and node server.
|
|
3
|
-
*/function start(){const isWindows=process.platform==="win32";const commandLineArguments=process.argv.slice(2);const argumentsObject=arrayToObject(commandLineArguments);const dirname=path.resolve(__dirname,"../../");
|
|
3
|
+
*/function start(){const isWindows=process.platform==="win32";const commandLineArguments=process.argv.slice(2);const argumentsObject=arrayToObject(commandLineArguments);const dirname=path.resolve(__dirname,"../../");let command=`
|
|
4
4
|
node ./dist/scripts/checkVersion
|
|
5
|
-
npx babel-node -r ./dist/scripts/loadScriptsBeforeServerStarts.js ./dist/webpack/development.client.babel --no-warnings=ExperimentalWarning --no-warnings=BABEL & npx babel-node -r ./dist/scripts/loadScriptsBeforeServerStarts.js ./dist/server/startServer.js --extensions .js,.ts,.jsx,.tsx --watch-path=${process.env.PWD}/server --watch-path=${
|
|
6
|
-
`;if(isWindows){spawn(`node ./dist/scripts/checkVersion && start /b npx babel-node -r ./dist/scripts/loadScriptsBeforeServerStarts.js ./dist/webpack/development.client.babel --no-warnings=ExperimentalWarning --no-warnings=BABEL`,[],{cwd:dirname,stdio:"inherit",shell:true,env:{...process.env,src_path:process.cwd(),NODE_ENV:"development",IS_DEV_COMMAND:false,APPLICATION:name||"catalyst_app",BUILD_OUTPUT_PATH:BUILD_OUTPUT_PATH,...argumentsObject}});spawn(`node ./dist/scripts/checkVersion && npx babel-node -r ./dist/scripts/loadScriptsBeforeServerStarts.js ./dist/server/startServer.js --watch-path=${process.cwd()}/server --watch-path=${
|
|
5
|
+
npx babel-node -r ./dist/scripts/loadScriptsBeforeServerStarts.js ./dist/webpack/development.client.babel --no-warnings=ExperimentalWarning --no-warnings=BABEL & npx babel-node -r ./dist/scripts/loadScriptsBeforeServerStarts.js ./dist/server/startServer.js --extensions .js,.ts,.jsx,.tsx --watch-path=${process.env.PWD}/server --watch-path=${process.env.PWD}/src --ignore='__IGNORE__' --no-warnings=ExperimentalWarning --no-warnings=BABEL
|
|
6
|
+
`;if(isWindows){spawn(`node ./dist/scripts/checkVersion && start /b npx babel-node -r ./dist/scripts/loadScriptsBeforeServerStarts.js ./dist/webpack/development.client.babel --no-warnings=ExperimentalWarning --no-warnings=BABEL`,[],{cwd:dirname,stdio:"inherit",shell:true,env:{...process.env,src_path:process.cwd(),NODE_ENV:"development",IS_DEV_COMMAND:false,APPLICATION:name||"catalyst_app",BUILD_OUTPUT_PATH:BUILD_OUTPUT_PATH,...argumentsObject}});spawn(`node ./dist/scripts/checkVersion && npx babel-node -r ./dist/scripts/loadScriptsBeforeServerStarts.js ./dist/server/startServer.js --watch-path=${process.cwd()}/server --watch-path=${process.cwd()}/src --ignore='__IGNORE__' --no-warnings=ExperimentalWarning --no-warnings=BABEL`,[],{cwd:dirname,stdio:"inherit",shell:true,env:{...process.env,src_path:process.cwd(),NODE_ENV:"development",IS_DEV_COMMAND:false,APPLICATION:name||"catalyst_app",BUILD_OUTPUT_PATH:BUILD_OUTPUT_PATH,...argumentsObject}});}else{spawnSync(command,[],{cwd:dirname,stdio:"inherit",shell:true,env:{...process.env,src_path:process.cwd(),NODE_ENV:"development",IS_DEV_COMMAND:false,APPLICATION:name||"catalyst_app",BUILD_OUTPUT_PATH:BUILD_OUTPUT_PATH,...argumentsObject}});}}start();
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use strict";const fs=require("fs");const path=require("path");const mock=require("mock-fs");const childProcess=require("child_process");const scriptUtils=require("./scriptUtils");// Mock modules
|
|
2
|
+
jest.mock("fs");jest.mock("path");jest.mock("child_process");jest.mock("./scriptUtils");describe("start script",()=>{let originalPlatform;let originalCwd;let originalEnv;beforeEach(()=>{// Save original values
|
|
3
|
+
originalPlatform=process.platform;originalCwd=process.cwd;originalEnv=process.env;// Mock process.cwd
|
|
4
|
+
process.cwd=jest.fn().mockReturnValue("/test/path");// Mock package.json and config.json requires
|
|
5
|
+
jest.mock("/test/path/package.json",()=>({name:"test-app"}),{virtual:true});jest.mock("/test/path/config/config.json",()=>({BUILD_OUTPUT_PATH:"build"}),{virtual:true});// Mock scriptUtils
|
|
6
|
+
scriptUtils.arrayToObject.mockReturnValue({mockArg:"value"});// Mock path
|
|
7
|
+
path.resolve.mockReturnValue("/test/root");path.join.mockReturnValue("/test/root/.catalyst-dev/server/renderer");// Reset all mocks
|
|
8
|
+
jest.clearAllMocks();});afterEach(()=>{// Restore original values
|
|
9
|
+
Object.defineProperty(process,"platform",{value:originalPlatform});process.cwd=originalCwd;process.env=originalEnv;// Clear all mocks
|
|
10
|
+
jest.resetModules();});test("should create server watch path if it does not exist",()=>{// Setup
|
|
11
|
+
fs.existsSync.mockReturnValue(false);// Execute
|
|
12
|
+
require("./start");// Verify
|
|
13
|
+
expect(fs.mkdirSync).toHaveBeenCalledWith("/test/root/.catalyst-dev/server/renderer",{recursive:true});});test("should spawn processes correctly on Windows",()=>{// Setup
|
|
14
|
+
Object.defineProperty(process,"platform",{value:"win32"});// Execute
|
|
15
|
+
require("./start");// Verify
|
|
16
|
+
expect(childProcess.spawn).toHaveBeenCalledTimes(2);expect(childProcess.spawn).toHaveBeenCalledWith(expect.stringContaining("checkVersion"),[],expect.objectContaining({cwd:"/test/root",stdio:"inherit",shell:true,env:expect.objectContaining({NODE_ENV:"development",APPLICATION:"test-app",BUILD_OUTPUT_PATH:"build"})}));});test("should spawn sync process on non-Windows",()=>{// Setup
|
|
17
|
+
Object.defineProperty(process,"platform",{value:"darwin"});// Execute
|
|
18
|
+
require("./start");// Verify
|
|
19
|
+
expect(childProcess.spawnSync).toHaveBeenCalledTimes(1);expect(childProcess.spawnSync).toHaveBeenCalledWith(expect.stringContaining("checkVersion"),[],expect.objectContaining({cwd:"/test/root",stdio:"inherit",shell:true,env:expect.objectContaining({NODE_ENV:"development",APPLICATION:"test-app",BUILD_OUTPUT_PATH:"build"})}));});test("should handle command line arguments",()=>{// Setup
|
|
20
|
+
process.argv=["node","script.js","--test=value"];// Execute
|
|
21
|
+
require("./start");// Verify
|
|
22
|
+
expect(scriptUtils.arrayToObject).toHaveBeenCalledWith(["--test=value"]);});});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.default=void 0;var _express=_interopRequireDefault(require("express"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e};}const router=_express.default.Router();
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.default=void 0;var _express=_interopRequireDefault(require("express"));var _handler=_interopRequireDefault(require("./handler"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e};}const router=_express.default.Router();router.use(_handler.default);var _default=exports.default=router;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";var _fs=_interopRequireDefault(require("fs"));var _path=_interopRequireDefault(require("path"));var _nodeUtil=_interopRequireDefault(require("node:util"));var _chokidar=_interopRequireDefault(require("chokidar"));var _picocolors=require("picocolors");var _index=require("@catalyst/template/server/index.js");var _validator=require("@catalyst/server/utils/validator.js");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e};}const env=process.env.NODE_ENV||"development";// function defined by user which needs to run before server starts
|
|
2
2
|
(0,_validator.safeCall)(_index.preServerInit);process.on("uncaughtException",(err,origin)=>{console.log(process.stderr.fd);console.log(`Caught exception: ${err}\n`+`Exception origin: ${origin}`);});process.on("SIGINT",function(data){console.log("SIGINT");console.log(data);process.exit(0);});process.on("uncaughtExceptionMonitor",(err,origin)=>{console.log(err,origin);});process.on("message",function(msg){if(msg=="shutdown"){console.log("Closing all connections...");setTimeout(function(){console.log("Finished closing connections");process.exit(0);},1500);}});if(env==="development"){// Add better stack tracing for promises in dev mode
|
|
3
|
-
process.on("unhandledRejection",r=>console.debug(r));}const port=process.env.NODE_SERVER_PORT??3005;const host=process.env.NODE_SERVER_HOSTNAME??"localhost";let statsPath=_path.default.join(__dirname,`../../`,"
|
|
3
|
+
process.on("unhandledRejection",r=>console.debug(r));}const port=process.env.NODE_SERVER_PORT??3005;const host=process.env.NODE_SERVER_HOSTNAME??"localhost";let statsPath=_path.default.join(__dirname,`../../`,"loadable-stats.json");if(env==="production"){statsPath=_path.default.join(process.env.src_path,`${process.env.BUILD_OUTPUT_PATH}/public/loadable-stats.json`);}const watcher=_chokidar.default.watch(statsPath,{persistent:true});let serverInstance=null;const restartServer=()=>{const server=require("./expressServer.js").default;serverInstance=server.listen({port,host});};const startServer=()=>{const server=require("./expressServer.js").default;serverInstance=server.listen({port,host},error=>{const{APPLICATION,NODE_SERVER_HOSTNAME,NODE_SERVER_PORT}=process.env;if(error){console.log("An error occured while starting the Application server : ",error);// function defined by user which needs to run if server fails
|
|
4
4
|
(0,_validator.safeCall)(_index.onServerError);return;}if(env==="development")console.log((0,_picocolors.green)("Compiled successfully!"));console.log(`\nYou can now view ${APPLICATION} in the browser.\n`);console.log(_nodeUtil.default.format("\tLocal:".padEnd(8),(0,_picocolors.cyan)(`http://${NODE_SERVER_HOSTNAME}:${NODE_SERVER_PORT}`)));if(env==="development"){console.log("\nNote that the development build is not optimized.");console.log("To create a production build, use "+(0,_picocolors.cyan)("npm run build"));}console.log("\nFind out more about deployment here:");console.log((0,_picocolors.yellow)("\n https://catalyst.1mg.com/public_docs/content/deployment\n"));});};if(_fs.default.existsSync(statsPath)){// if loadable-stats.json exist this block will start the server in development environment. This happens in dev environment when loadable stats already exists and developer is making changes to the files. lodable-stats.json will be updated after every change.
|
|
5
5
|
watcher.on("change",()=>{watcher.close();if(serverInstance){serverInstance.close(()=>startServer());}else{startServer();}});// this block will start the server when your files have been compiled for production and lodable-stats.json exists.
|
|
6
6
|
watcher.on("add",()=>{if(env==="production"){watcher.close();startServer();}});}else{// this block will start the server in development environment for the first time when loadable-stats.json does not exists.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.default=void 0;
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.default=void 0;var _webpackConfig=_interopRequireDefault(require("@catalyst/template/webpackConfig.js"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e};}const isCompilerEnabled=!!_webpackConfig.default.reactCompiler;const reactCompilerOptions=typeof _webpackConfig.default.reactCompiler==="object"?_webpackConfig.default.reactCompiler:{target:"18"};var _default=exports.default={babelrc:false,presets:[["@babel/preset-typescript",{isTSX:true,allExtensions:true}],["@babel/preset-env",{targets:{browsers:"last 2 versions"}}],["@babel/preset-react",{runtime:"automatic"}]],plugins:[...(isCompilerEnabled?[["babel-plugin-react-compiler",reactCompilerOptions]]:[]),"@loadable/babel-plugin"],env:{production:{plugins:[require("./babel-plugins/remove-ssr.plugin").default,"transform-react-remove-prop-types"]},test:{presets:["@babel/preset-react"]}},ignore:["__TEST__"]};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.default=void 0;
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.default=void 0;var _webpackConfig=_interopRequireDefault(require("@catalyst/template/webpackConfig.js"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e};}const isCompilerEnabled=!!_webpackConfig.default.reactCompiler;const reactCompilerOptions=typeof _webpackConfig.default.reactCompiler==="object"?_webpackConfig.default.reactCompiler:{target:"18"};var _default=exports.default={babelrc:false,presets:[["@babel/preset-typescript",{isTSX:true,allExtensions:true}],["@babel/preset-env",{targets:{node:"current"}}],["@babel/preset-react",{runtime:"automatic"}]],plugins:[...(isCompilerEnabled?[["babel-plugin-react-compiler",reactCompilerOptions]]:[]),"@loadable/babel-plugin"],env:{development:{plugins:["react-refresh/babel"]},production:{plugins:[require("./babel-plugins/remove-client.plugin").default,"transform-react-remove-prop-types"]}},ignore:["__TEST__"]};
|
|
@@ -1,19 +1,4 @@
|
|
|
1
|
-
"use strict";var _webpack=_interopRequireDefault(require("webpack"));var _webpackMerge=
|
|
2
|
-
const{WEBPACK_DEV_SERVER_PORT,WEBPACK_DEV_SERVER_HOSTNAME}=process.env;// Create client config
|
|
3
|
-
const webpackClientConfig=(0,_webpackMerge.default)(_baseBabel.default,{devtool:"inline-source-map",stats:"none",infrastructureLogging:{level:"none"},plugins:[new _reactRefreshWebpackPlugin.default({overlay:{entry:false}}),new _miniCssExtractPlugin.default({filename:_config.default.cssChunkFileName,ignoreOrder:true}),..._webpackConfig.default.developmentPlugins].filter(Boolean),optimization:{runtimeChunk:"single",moduleIds:"deterministic",splitChunks:_webpackConfig.default.splitChunksConfig?_webpackConfig.default.splitChunksConfig:{cacheGroups:{commonVendor:{test:/[\\/]node_modules[\\/](react|react-dom|react-redux|react-router|react-router-dom|redux|redux-thunk|axios|react-loadable-visibility|react-helmet-async|react-fast-compare|react-async-script|babel|@loadable\/component|catalyst)[\\/]/,name:"commonVendor",minSize:30000},utilityVendor:{maxInitialRequests:Infinity,chunks:"all",// minSize: 0, // Enable to replicate stand alone chunking for all packages
|
|
1
|
+
"use strict";var _webpack=_interopRequireDefault(require("webpack"));var _webpackMerge=_interopRequireDefault(require("webpack-merge"));var _webpackDevServer=_interopRequireDefault(require("webpack-dev-server"));var _miniCssExtractPlugin=_interopRequireDefault(require("mini-css-extract-plugin"));var _reactRefreshWebpackPlugin=_interopRequireDefault(require("@pmmmwh/react-refresh-webpack-plugin"));var _config=_interopRequireDefault(require("@catalyst/root/config.json"));var _baseBabel=_interopRequireDefault(require("@catalyst/webpack/base.babel.js"));var _webpackConfig=_interopRequireDefault(require("@catalyst/template/webpackConfig.js"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e};}const{WEBPACK_DEV_SERVER_PORT,WEBPACK_DEV_SERVER_HOSTNAME}=process.env;const webpackConfig=(0,_webpackMerge.default)(_baseBabel.default,{devtool:"inline-source-map",stats:"none",infrastructureLogging:{level:"none"},plugins:[new _reactRefreshWebpackPlugin.default({overlay:{entry:false}}),new _miniCssExtractPlugin.default({filename:_config.default.cssChunkFileName,ignoreOrder:true}),..._webpackConfig.default.developmentPlugins].filter(Boolean),optimization:{runtimeChunk:"single",moduleIds:"deterministic",splitChunks:_webpackConfig.default.splitChunksConfig?_webpackConfig.default.splitChunksConfig:{cacheGroups:{commonVendor:{test:/[\\/]node_modules[\\/](react|react-dom|react-redux|react-router|react-router-dom|redux|redux-thunk|axios|react-loadable-visibility|react-helmet-async|react-fast-compare|react-async-script|babel|@loadable\/component|catalyst)[\\/]/,name:"commonVendor",minSize:30000},utilityVendor:{maxInitialRequests:Infinity,chunks:"all",// minSize: 0, // Enable to replicate stand alone chunking for all packages
|
|
4
2
|
reuseExistingChunk:true,// Disable to replicate stand alone chunking for all packages
|
|
5
3
|
minRemainingSize:1000,// Disable to replicate stand alone chunking for all packages
|
|
6
|
-
test:/[\\/]node_modules[\\/]/,name(module){const moduleFileName=module.identifier().split("/").
|
|
7
|
-
const webpackSSRConfig=(0,_webpackMerge.mergeWithCustomize)({customizeArray:(0,_webpackMerge.customizeArray)({entry:"replace",optimization:"replace",plugins:"prepend"}),customizeObject:(0,_webpackMerge.customizeObject)({entry:"replace",optimization:"replace",plugins:"prepend"})})(_baseBabel.default,{mode:"development",stats:"none",target:"node",entry:{handler:_path.default.resolve(__dirname,"..","./server/renderer/handler.js")},externals:[/\.(html|png|gif|jpg)$/,(0,_webpackNodeExternals.default)({modulesDir:_path.default.resolve(process.env.src_path,"./node_modules"),allowlist:_webpackConfig.default.transpileModules?_webpackConfig.default.transpileModules:[]}),(0,_webpackNodeExternals.default)({modulesDir:_path.default.join(_appRootPath.default.path,"./node_modules"),allowlist:_webpackConfig.default.transpileModules?_webpackConfig.default.transpileModules:[]})],resolve:{alias:_registerAliases.catalystResultMap},output:{path:_path.default.join(__dirname,"../..",".catalyst-dev","/server","/renderer"),chunkFilename:_config.default.chunkFileName,filename:"handler.development.js",libraryTarget:"commonjs"},plugins:[new _miniCssExtractPlugin.default({filename:_config.default.cssChunkFileName,ignoreOrder:true}),..._webpackConfig.default.ssrPlugins].filter(Boolean)});// Create separate compiler for SSR that writes to disk
|
|
8
|
-
const ssrCompiler=(0,_webpack.default)(webpackSSRConfig);const watchInstance=ssrCompiler.watch({},err=>{if(err){console.error(err);return;}console.log("SSR bundle recompiled");});// Create dev server for client-side only
|
|
9
|
-
let devServer=new _webpackDevServer.default({port:WEBPACK_DEV_SERVER_PORT,host:WEBPACK_DEV_SERVER_HOSTNAME,static:{publicPath:webpackClientConfig.output.publicPath},hot:true,historyApiFallback:true,headers:{"Access-Control-Allow-Origin":"*"},client:{logging:"error",overlay:{errors:false,warnings:false,runtimeErrors:false},reconnect:true}},(0,_webpack.default)(webpackClientConfig));devServer.startCallback(()=>{console.log("Catalyst is compiling your files.");console.log("Please wait until bundling is finished.\n");});// Cleanup on exit
|
|
10
|
-
const cleanup=()=>{// Close webpack watch
|
|
11
|
-
watchInstance.close(()=>{// Delete the development handler file
|
|
12
|
-
try{// Delete the file
|
|
13
|
-
require("fs").unlinkSync(_path.default.join(__dirname,"../..",".catalyst-dev","/server","/renderer","handler.development.js"));// Try to remove the renderer directory
|
|
14
|
-
require("fs").rmdirSync(_path.default.join(process.env.src_path,".catalyst-dev","/renderer"));// Try to remove the parent directory
|
|
15
|
-
require("fs").rmdirSync(_path.default.join(process.env.src_path,".catalyst-dev"));}catch(err){// Ignore errors during cleanup
|
|
16
|
-
}process.exit();});};// Handle various ways the process might exit
|
|
17
|
-
process.on("SIGINT",cleanup);// Ctrl+C
|
|
18
|
-
process.on("SIGTERM",cleanup);// kill
|
|
19
|
-
process.on("exit",cleanup);// normal exit
|
|
4
|
+
test:/[\\/]node_modules[\\/]/,name(module){const moduleFileName=module.identifier().split("node_modules")?.[1]?.split("/").reverse().slice(0,3).reduce((item,current)=>{item=current+"."+item;return item;},[]);return`npm.${moduleFileName}`;}}}}}});let devServer=new _webpackDevServer.default({port:WEBPACK_DEV_SERVER_PORT,host:WEBPACK_DEV_SERVER_HOSTNAME,static:{publicPath:webpackConfig.output.publicPath},hot:true,historyApiFallback:true,headers:{"Access-Control-Allow-Origin":"*"},client:{logging:"error",overlay:{errors:false,warnings:false,runtimeErrors:false},reconnect:true}},(0,_webpack.default)(webpackConfig));devServer.startCallback(()=>{console.log("Catalyst is compiling your files.");console.log("Please wait until bundling is finished.\n");});
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.default=void 0;var _registerAliases2=require("../scripts/registerAliases.js");var _miniCssExtractPlugin=_interopRequireDefault(require("mini-css-extract-plugin"));var _webpackMerge=require("webpack-merge");var _base=_interopRequireDefault(require("@catalyst/webpack/base.babel"));var _config=_interopRequireDefault(require("@catalyst/root/config.json"));var _webpackConfig=_interopRequireDefault(require("@catalyst/template/webpackConfig.js"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e};}/* eslint-disable */const clientConfig=(0,_webpackMerge.mergeWithCustomize)({customizeArray:(0,_webpackMerge.customizeArray)({entry:"prepend",plugins:"append",module:"prepend"}),customizeObject:(0,_webpackMerge.customizeObject)({entry:"prepend",plugins:"append",module:"prepend"})})(_base.default,{mode:"production",stats:"errors-only",resolve:{alias:_registerAliases2.catalystResultMap},optimization:{runtimeChunk:"single",moduleIds:"deterministic",splitChunks:_webpackConfig.default.splitChunksConfig?_webpackConfig.default.splitChunksConfig:{cacheGroups:{commonVendor:{chunks:"all",test:/[\\/]node_modules[\\/](react|react-dom|react-redux|react-router|react-router-dom|redux|redux-thunk|axios|react-loadable-visibility|react-helmet-async|react-fast-compare|react-async-script|babel|@loadable\/component|catalyst)[\\/]/,name:"commonVendor",minSize:400000,maxSize:400000},utilityVendor:{maxInitialRequests:Infinity,chunks:"all",// minSize: 0, // Enable to replicate stand alone chunking for all packages
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.default=void 0;var _registerAliases2=require("../scripts/registerAliases.js");require("../scripts/loadScriptsBeforeServerStarts.js");var _miniCssExtractPlugin=_interopRequireDefault(require("mini-css-extract-plugin"));var _webpackMerge=require("webpack-merge");var _base=_interopRequireDefault(require("@catalyst/webpack/base.babel"));var _config=_interopRequireDefault(require("@catalyst/root/config.json"));var _webpackConfig=_interopRequireDefault(require("@catalyst/template/webpackConfig.js"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e};}/* eslint-disable */const clientConfig=(0,_webpackMerge.mergeWithCustomize)({customizeArray:(0,_webpackMerge.customizeArray)({entry:"prepend",plugins:"append",module:"prepend"}),customizeObject:(0,_webpackMerge.customizeObject)({entry:"prepend",plugins:"append",module:"prepend"})})(_base.default,{mode:"production",stats:"errors-only",resolve:{alias:_registerAliases2.catalystResultMap},optimization:{runtimeChunk:"single",moduleIds:"deterministic",splitChunks:_webpackConfig.default.splitChunksConfig?_webpackConfig.default.splitChunksConfig:{cacheGroups:{commonVendor:{chunks:"all",test:/[\\/]node_modules[\\/](react|react-dom|react-redux|react-router|react-router-dom|redux|redux-thunk|axios|react-loadable-visibility|react-helmet-async|react-fast-compare|react-async-script|babel|@loadable\/component|catalyst)[\\/]/,name:"commonVendor",minSize:400000,maxSize:400000},utilityVendor:{maxInitialRequests:Infinity,chunks:"all",// minSize: 0, // Enable to replicate stand alone chunking for all packages
|
|
2
2
|
reuseExistingChunk:true,// Disable to replicate stand alone chunking for all packages
|
|
3
3
|
minRemainingSize:1000,// Disable to replicate stand alone chunking for all packages
|
|
4
4
|
minSize:1000,maxSize:120000,test:/[\\/]node_modules[\\/]/,name(module){const moduleFileName=module.identifier().split("/").reverse().slice(0,3).reduce((item,current)=>{item=current+"."+item;return item;},[]);return`npm.${moduleFileName}`;}}},chunks:"all",name(module){const moduleFileName=module.identifier().split("/").reverse().slice(0,3).reduce((item,current)=>{item=current+"."+item;return item;},[]);return`npm.${moduleFileName}`;}}},plugins:[new _miniCssExtractPlugin.default({filename:_config.default.cssChunkFileName,ignoreOrder:true}),..._webpackConfig.default.clientPlugins]});var _default=exports.default=clientConfig;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.default=void 0;var _registerAliases2=require("../scripts/registerAliases.js");var _path=_interopRequireDefault(require("path"));var _webpackNodeExternals=_interopRequireDefault(require("webpack-node-externals"));var _appRootPath=_interopRequireDefault(require("app-root-path"));var _base=_interopRequireDefault(require("@catalyst/webpack/base.babel"));var _config=_interopRequireDefault(require("@catalyst/root/config.json"));var _webpackConfig=_interopRequireDefault(require("@catalyst/template/webpackConfig.js"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e};}/* eslint-disable */const{mergeWithCustomize,customizeArray,customizeObject}=require("webpack-merge");const ssrConfig=mergeWithCustomize({customizeArray:customizeArray({entry:"replace",optimization:"replace",plugins:"prepend"}),customizeObject:customizeObject({entry:"replace",optimization:"replace",plugins:"prepend"})})(_base.default,{mode:"production",stats:"errors-only",optimization:{splitChunks:{chunks:"all",minSize:10000000,name:false}},resolve:{alias:_registerAliases2.catalystResultMap},plugins:[..._webpackConfig.default.ssrPlugins],target:"node",entry:{handler:_path.default.resolve(__dirname,"..","./server/renderer/handler.js")},externals:[// images are handled by isomorphic webpack.
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.default=void 0;var _registerAliases2=require("../scripts/registerAliases.js");require("../scripts/loadScriptsBeforeServerStarts.js");var _path=_interopRequireDefault(require("path"));var _webpackNodeExternals=_interopRequireDefault(require("webpack-node-externals"));var _appRootPath=_interopRequireDefault(require("app-root-path"));var _base=_interopRequireDefault(require("@catalyst/webpack/base.babel"));var _config=_interopRequireDefault(require("@catalyst/root/config.json"));var _webpackConfig=_interopRequireDefault(require("@catalyst/template/webpackConfig.js"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e};}/* eslint-disable */const{mergeWithCustomize,customizeArray,customizeObject}=require("webpack-merge");const ssrConfig=mergeWithCustomize({customizeArray:customizeArray({entry:"replace",optimization:"replace",plugins:"prepend"}),customizeObject:customizeObject({entry:"replace",optimization:"replace",plugins:"prepend"})})(_base.default,{mode:"production",stats:"errors-only",optimization:{splitChunks:{chunks:"all",minSize:10000000,name:false}},resolve:{alias:_registerAliases2.catalystResultMap},plugins:[..._webpackConfig.default.ssrPlugins],target:"node",entry:{handler:_path.default.resolve(__dirname,"..","./server/renderer/handler.js")},externals:[// images are handled by isomorphic webpack.
|
|
2
2
|
// html files are required directly
|
|
3
3
|
/\.(html|png|gif|jpg)$/,// treat all node modules as external to keep this bundle small
|
|
4
|
-
(0,_webpackNodeExternals.default)({modulesDir:_path.default.resolve(process.env.src_path,"./node_modules")
|
|
4
|
+
(0,_webpackNodeExternals.default)({modulesDir:_path.default.resolve(process.env.src_path,"./node_modules")}),(0,_webpackNodeExternals.default)({modulesDir:_path.default.join(_appRootPath.default.path,"./node_modules")})],output:{path:_path.default.join(process.env.src_path,process.env.BUILD_OUTPUT_PATH,"/renderer"),chunkFilename:_config.default.chunkFileNameProd,filename:"handler.js",libraryTarget:"commonjs"}});var _default=exports.default=ssrConfig;
|
package/package.json
CHANGED
package/run.sh
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
npm run prepare
|
|
2
|
-
rm -rf ../
|
|
3
|
-
mv dist ../
|
|
2
|
+
rm -rf ../1mg_web/mweb/node_modules/catalyst-core/dist
|
|
3
|
+
mv dist ../1mg_web/mweb/node_modules/catalyst-core/
|