Thanks we are solved this issue by fixing of index file error
Please find above, i sent email on [email protected]
Looking forward to have some solution from you guys.
You need all files of wwwroot folder and package.json into email [email protected] ?
We can not provide you full project but we can share files if you want. let me know which files you want to see
If we run npm audit fix --force then this screen we found
and then again if we run npm run build in cmd then found this screen.
Hope this will a required information you need for index file.
Error [ERR_REQUIRE_ESM]: require() of ES Module D:\Clients\Frederick\MooreWe\src\MooreWe.Web.Mvc\node_modules\globby\index.js from D:\Clients\Frederick\MooreWe\src\MooreWe.Web.Mvc\gulpfile.js not supported.
Instead change the require of index.js in D:\Clients\Frederick\MooreWe\src\MooreWe.Web.Mvc\gulpfile.js to a dynamic import() which is available in all CommonJS modules.
at Object.<anonymous> (D:\Clients\Frederick\MooreWe\src\MooreWe.Web.Mvc\gulpfile.js:5:14) {
code: 'ERR_REQUIRE_ESM'
}
We have almost 40 index.js files but can not find the variable or object-name like sTable anywhere. Here is our gulp file.
var gulp = require('gulp');
var path = require('path');
var fs = require('fs');
var merge = require('merge-stream');
var globby = require('globby');
var concat = require('gulp-concat');
var less = require('gulp-less');
var uglify = require('gulp-uglify-es').default;
var cleanCss = require('gulp-clean-css');
var postcss = require('gulp-postcss');
var url = require('postcss-url');
var bundleConfig = require(path.resolve(__dirname, 'bundles.json'));
var production = false;
const { watch } = require('gulp');
var styleEntries = {};
var scriptEntries = {};
var viewScripts = globby.sync(['./wwwroot/view-resources/**/*.js', '!./wwwroot/view-resources/**/*.min.js']);
var viewStyles = globby.sync([
'./wwwroot/view-resources/**/*.css',
'./wwwroot/view-resources/**/*.less',
'!./wwwroot/view-resources/**/*.min.css',
]);
var metronicScripts = globby.sync([
'./wwwroot/metronic/**/*.js',
'!./wwwroot/metronic/**/*.min.js',
'!./wwwroot/metronic/core/**/*.js',
]);
var metronicStyles = globby.sync([
'./wwwroot/metronic/**/*.css',
'./wwwroot/metronic/**/*.less',
'!./wwwroot/metronic/**/*.min.css',
]);
function processInputDefinition(input) {
var result = [];
for (var i = 0; i < input.length; i++) {
var url = input[i];
if (url.startsWith('!')) {
result.push('!' + path.resolve(__dirname, url.substring(1)));
} else {
result.push(path.resolve(__dirname, url));
}
}
return result;
}
function fillScriptBundles() {
// User defined bundles
for (var k = 0; k < bundleConfig.scripts.length; k++) {
var scriptBundle = bundleConfig.scripts[k];
checkBundleItem(scriptBundle);
scriptEntries[scriptBundle.output] = globby.sync(processInputDefinition(scriptBundle.input), { noext: true });
}
// View scripts
for (var i = 0; i < viewScripts.length; i++) {
var viewScriptName = viewScripts[i].replace('./wwwroot/', '');
scriptEntries[viewScriptName.replace('.js', '.min.js')] = [path.resolve(__dirname, viewScripts[i])];
}
// Metronic scripts
for (var j = 0; j < metronicScripts.length; j++) {
var metronicScriptName = metronicScripts[j].replace('./wwwroot/', '');
scriptEntries[metronicScriptName.replace('.js', '.min.js')] = [path.resolve(__dirname, metronicScripts[j])];
}
}
function fillStyleBundles() {
// User defined styles
for (var k = 0; k < bundleConfig.styles.length; k++) {
var styleBundle = bundleConfig.styles[k];
checkBundleItem(styleBundle);
styleEntries[styleBundle.output] = globby.sync(processInputDefinition(styleBundle.input), { noext: true });
}
// View styles
for (var j = 0; j < viewStyles.length; j++) {
var viewStyleName = viewStyles[j].replace('./wwwroot/', '');
if (viewStyleName.indexOf('.css') >= 0) {
styleEntries[viewStyleName.replace('.css', '.min.css')] = [path.resolve(__dirname, 'wwwroot/' + viewStyleName)];
}
if (viewStyleName.indexOf('.less') >= 0) {
styleEntries[viewStyleName.replace('.less', '.min.css')] = [path.resolve(__dirname, 'wwwroot/' + viewStyleName)];
}
}
// Metronic styles
for (var i = 0; i < metronicStyles.length; i++) {
var metronicStyleName = metronicStyles[i].replace('./wwwroot/', '');
if (metronicStyleName.indexOf('.css') >= 0) {
styleEntries[metronicStyleName.replace('.css', '.min.css')] = [
path.resolve(__dirname, 'wwwroot/' + metronicStyleName),
];
}
if (metronicStyleName.indexOf('.less') >= 0) {
styleEntries[metronicStyleName.replace('.less', '.min.css')] = [
path.resolve(__dirname, 'wwwroot/' + metronicStyleName),
];
}
}
}
function getFileNameFromPath(fullPath) {
return path.basename(fullPath);
}
function getPathWithoutFileNameFromPath(fullPath) {
return path.dirname(fullPath);
}
function fillScriptMappings() {
for (var k = 0; k < bundleConfig.scriptMappings.length; k++) {
var scriptBundle = bundleConfig.scriptMappings[k];
var inputFilesToBeCopied = globby.sync(processInputDefinition(scriptBundle.input), { noext: true });
for (var j = 0; j < inputFilesToBeCopied.length; j++) {
var outputFileName = path.join(scriptBundle.outputFolder, getFileNameFromPath(inputFilesToBeCopied[j]));
scriptEntries[outputFileName] = [inputFilesToBeCopied[j]];
}
}
}
function createScriptBundles() {
var tasks = [];
for (var script in scriptEntries) {
tasks.push(createScriptBundle(script));
}
return tasks;
}
function createScriptBundle(script) {
var bundleName = getFileNameFromPath(script);
var bundlePath = getPathWithoutFileNameFromPath(script);
var stream = gulp.src(scriptEntries[script]);
if (production) {
stream = stream.pipe(uglify());
}
return stream.pipe(concat(bundleName)).pipe(gulp.dest('wwwroot/' + bundlePath));
}
function createStyleBundles() {
var tasks = [];
for (var style in styleEntries) {
tasks.push(createStyleBundle(style));
}
return tasks;
}
function createStyleBundle(style) {
var bundleName = getFileNameFromPath(style);
var bundlePath = getPathWithoutFileNameFromPath(style);
var options = {
url: function (asset) {
// Ignore absolute URLs
if (asset.url.substring(0, 1) === '/') {
return asset.url;
}
var outputFolder = '';
if (asset.url.match(/\.(png|svg|jpg|gif)$/)) {
outputFolder = 'dist/img';
} else if (asset.url.match(/\.(woff|woff2|eot|ttf|otf)[?]{0,1}.*$/)) {
outputFolder = 'dist/fonts';
} else {
// Ignore not recognized assets like data:image etc...
return asset.url;
}
var fileName = path.basename(asset.absolutePath);
var outputPath = path.join(__dirname, '/wwwroot/' + outputFolder + '/');
gulp.src(asset.absolutePath).pipe(gulp.dest(outputPath));
return '/' + outputFolder + '/' + fileName;
},
};
var stream = gulp
.src(styleEntries[style])
.pipe(postcss([url(options)]))
.pipe(less({ math: 'parens-division' }));
if (production) {
stream = stream.pipe(cleanCss());
}
return stream.pipe(concat(bundleName)).pipe(gulp.dest('wwwroot/' + bundlePath));
}
function findMatchingElements(path, array) {
var result = [];
for (var item in array) {
if (array[item].indexOf(path) >= 0) {
result[item] = array[item];
}
}
return result;
}
function watchScriptEntries() {
for (var script in scriptEntries) {
var watcher = watch(scriptEntries[script]);
watcher.on('change', function (path, stats) {
console.log(`${path} updated`);
var changedBundles = findMatchingElements(path, scriptEntries);
for (var changedBundle in changedBundles) {
createScriptBundle(changedBundle);
}
});
}
}
function watchStyleEntries() {
for (var style in styleEntries) {
var watcher = watch(styleEntries[style]);
watcher.on('change', function (path, stats) {
console.log(`${path} updated`);
var changedBundles = findMatchingElements(path, styleEntries);
for (var changedBundle in changedBundles) {
createStyleBundle(changedBundle);
}
});
}
}
function build() {
production = true;
fillScriptBundles();
fillStyleBundles();
fillScriptMappings();
var scriptTasks = createScriptBundles();
var styleTasks = createStyleBundles();
return merge(scriptTasks.concat(styleTasks));
}
function buildDev() {
fillScriptBundles();
fillStyleBundles();
fillScriptMappings();
var scriptTasks = createScriptBundles();
var styleTasks = createStyleBundles();
watchScriptEntries();
watchStyleEntries();
console.log('Bundles are being created, please wait...');
return merge(scriptTasks.concat(styleTasks));
}
function checkBundleItem(bundleItem) {
var definition = processInputDefinition(bundleItem.input);
for (var i = 0; i < definition.length; i++) {
var url = definition[i];
if (
typeof url == 'undefined' ||
url.startsWith('!') ||
url.indexOf('*') >= 0 ||
url.match(/^[0-9]+$/) != null //only digit
) {
continue;
}
checkFile(url);
}
}
function checkFile(path) {
try {
if (fs.existsSync(path)) {
//file exists
} else {
console.error('File not found: ' + path);
}
} catch (err) {
console.error('File not found: ' + path);
}
}
exports.build = build;
exports.buildDev = buildDev;
here is our package.json file
{
"name": "abpzerotemplate",
"scripts": {
"create-bundles": "yarn && gulp buildDev",
"build": "yarn && gulp build"
},
"version": "10.5.0",
"dependencies": {
"@fancyapps/fancybox": "^3.5.7",
"@fortawesome/fontawesome-free": "^5.8.1",
"@microsoft/signalr": "^3.1.2",
"abp-web-resources": "5.2",
"animate.css": "^3.7.0",
"autosize": "^4.0.2",
"block-ui": "^2.70.1",
"blueimp-file-upload": "^10.2.0",
"bootstrap": "4.3.1",
"bootstrap-daterangepicker": "^3.0.3",
"bootstrap-hover-dropdown": "^2.2.1",
"bootstrap-markdown": "^2.10.0",
"bootstrap-maxlength": "^1.6.0",
"bootstrap-notify": "^3.1.3",
"bootstrap-select": "^1.13.9",
"bootstrap-switch": "3.3.4",
"bootstrap-timepicker": "^0.5.2",
"bootstrap-touchspin": "^4.2.5",
"bootstrap4-datetimepicker": "^5.2.3",
"bower": "*",
"chart.js": "^2.7.3",
"chartist": "^0.11.0",
"cookieconsent": "^3.1.0",
"css-toggle-switch": "^4.1.0",
"d3": "^5.9.1",
"datatables.net": "^2.1.1",
"datatables.net-bs4": "^3.2.2",
"datatables.net-responsive": "^2.2.3",
"datatables.net-responsive-bs4": "^2.2.3",
"datatables.net-select": "^1.3.0",
"detect-zoom": "^1.0.2",
"dropzone": "^5.5.1",
"easy-pie-chart": "^2.1.7",
"famfamfam-flags": "^1.0.0",
"flot": "^0.8.0-alpha",
"gmaps": "^0.4.24",
"gridstack": "^4.2.3",
"inputmask": "^4.0.6",
"ion-rangeslider": "^2.3.0",
"jquery": "^3.3.1",
"jquery-form": "^4.2.2",
"jquery-serializejson": "^2.9.0",
"jquery-slimscroll": "^1.3.8",
"jquery-sparkline": "^2.4.0",
"jquery-validation": "^1.19.0",
"jquery.counterup": "^2.1.0",
"jquery.uniform": "^4.3.0",
"jqvmap": "^1.5.1",
"js-beautify": "^1.13.0",
"js-cookie": "^2.2.0",
"js-url": "^2.3.0",
"json2": "*",
"jstree": "^3.3.7",
"localforage": "^1.7.3",
"malihu-custom-scrollbar-plugin": "^3.1.5",
"moment": "^2.24.0",
"moment-timezone": "^0.5.23",
"morris.js": "^0.5.0",
"mustache": "^3.0.1",
"pace-progress": "^1.0.2",
"perfect-scrollbar": "^1.4.0",
"popper.js": "^1.14.7",
"prismjs": "^1.16.0",
"push.js": "^1.0.9",
"pwstrength-bootstrap": "^3.0.5",
"rangeslider.js": "^2.3.2",
"raphael": "^2.2.8",
"select2": "^4.0.10",
"select2-bootstrap-theme": "^0.1.0-beta.10",
"signalr": "^2.4.0",
"simple-line-icons": "^2.4.1",
"socicon": "^3.0.5",
"spin.js": "^2.3.2",
"sticky-js": "^1.2.0",
"summernote": "^0.8.11",
"sweetalert": "^2.1.2",
"tether": "1.4.7",
"timeago": "^1.6.5",
"toastr": "^2.1.4",
"tooltip.js": "^1.3.1",
"topojson": "^3.0.2",
"typeahead.js": "^0.11.1",
"underscore": "^1.9.1",
"urijs": "^1.19.1",
"waypoints": "^4.0.1"
},
"devDependencies": {
"@types/node": "^12.7.4",
"globby": "^9.2.0",
"gulp": "^4.0.1",
"gulp-clean-css": "^4.2.0",
"gulp-concat": "^2.6.1",
"gulp-less": "^4.0.1",
"gulp-postcss": "^8.0.0",
"gulp-uglify-es": "^1.0.4",
"merge-stream": "^2.0.0",
"postcss-url": "^9.0.0",
"rimraf": "^3.0.0",
"yarn": "^1.15.0",
"prettier": "^2.3.2"
}
}
I checked, We are not using Redis.
This is in our appsettings.json for both web and host projects
"Abp": { "RedisCache": { "ConnectionString": "localhost", "DatabaseId": -1 } },
We are using on instance of app, menu is refreshing but it is not fetching all the authentication and authorizations objects properly.
one example of it, like if a super-admin grant admin role to a user, this below method await IsGrantedAsync(AppPermissions.Pages_Administration_Roles)
not identifying admin role.