loader bundler fixes

This commit is contained in:
Yuri Kuznetsov
2023-06-14 10:57:51 +03:00
parent 56d72946bc
commit 6fcd6bc6e4
5 changed files with 30 additions and 15 deletions

View File

@@ -26,7 +26,7 @@
* these Appropriate Legal Notices must retain the display of the "EspoCRM" word.
************************************************************************/
define('views/user/password-change-request', ['view', 'model', 'lib!Espo'], function (Dep, Model, Espo) {
define('views/user/password-change-request', ['view', 'model', 'lib!espo'], function (Dep, Model, Espo) {
return Dep.extend({

View File

@@ -13,13 +13,16 @@
"chunks": {
"main": {
"files": [
"src/namespace.js",
"src/loader.js",
"src/exceptions.js",
"src/utils.js"
],
"ignoreFiles": [
"src/namespace.js",
"src/loader.js",
"src/pre-loader.js"
],
"patterns": [
"src/!(pre-loader|namespace|loader).js",
"src/*.js",
"src/ui/**/*.js",
"src/views/*.js",
"src/views/site/*.js",
@@ -115,6 +118,11 @@
"patterns": [
"src/**/*.js"
],
"ignoreFiles": [
"src/namespace.js",
"src/loader.js",
"src/pre-loader.js"
],
"noDuplicates": true
}
},

View File

@@ -90,12 +90,12 @@
{
"src": "node_modules/jquery-ui-espo/dist/jquery-ui.js",
"bundle": true,
"suppressAmd": true
"suppressAmd": true,
"key": "jquery-ui"
},
{
"src": "node_modules/jquery-ui-touch-punch/jquery.ui.touch-punch.js",
"bundle": true,
"suppressAmd": true
"bundle": true
},
{
"name": "gridstack",

View File

@@ -38,6 +38,7 @@ class BundlerGeneral {
* chunks: Object.<string, {
* files?: string[],
* patterns?: string[],
* ignoreFiles?: string[],
* lookupPatterns?: string[],
* templatePatterns?: string[],
* noDuplicates?: boolean,
@@ -181,7 +182,8 @@ class BundlerGeneral {
patterns: patterns,
lookupPatterns: lookupPatterns,
libs: this.libs,
ignoreFiles: ignoreFiles,
ignoreFullPathFiles: ignoreFiles,
ignoreFiles: params.ignoreFiles,
dependentOn: params.dependentOn,
});

View File

@@ -58,8 +58,9 @@ class Bundler {
* name: string,
* files?: string[],
* patterns: string[],
* lookupPatterns?: string[],
* ignoreFiles?: string[],
* lookupPatterns?: string[],
* ignoreFullPathFiles?: string[],
* dependentOn?: string[],
* libs: {
* src?: string,
@@ -75,11 +76,15 @@ class Bundler {
* }}
*/
bundle(params) {
let files = []
let ignoreFullPathFiles = params.ignoreFullPathFiles ?? [];
let files = params.files ?? [];
let ignoreFiles = params.ignoreFiles ?? [];
let fullPathFiles = []
.concat(this.#normalizePaths(params.files || []))
.concat(this.#obtainFiles(params.patterns, params.files))
.concat(this.#obtainFiles(params.patterns, [...files, ...ignoreFiles]))
// @todo Check if working.
.filter(file => !params.ignoreFiles.includes(file));
.filter(file => !ignoreFullPathFiles.includes(file));
let allFiles = this.#obtainFiles(params.lookupPatterns || params.patterns);
@@ -92,10 +97,10 @@ class Bundler {
let sortedFiles = this.#sortFiles(
params.name,
files,
fullPathFiles,
allFiles,
ignoreLibs,
params.ignoreFiles || [],
ignoreFullPathFiles,
notBundledModules,
params.dependentOn || null,
);
@@ -132,7 +137,7 @@ class Bundler {
*/
#obtainFiles(patterns, ignoreFiles) {
let files = [];
ignoreFiles = ignoreFiles || [];
ignoreFiles = this.#normalizePaths(ignoreFiles || []);
this.#normalizePaths(patterns).forEach(pattern => {
let itemFiles = globSync(pattern, {})