I'm trying to start my website again after few years but can not change the code because my gulpfile.js for the compiler does not start. Terminal says that the reasoin is that node-sass I used before is deprecated and asks to change with 'sass' or 'sass-embedded' The code for consts was:
const gulp = require('gulp'),
browserSync = require('browser-sync'),
sass = require('gulp-sass')(require('node-sass')),
rename = require('gulp-rename'),
autoprefixer = require('gulp-autoprefixer'),
cleanCSS = require('gulp-clean-css'),
htmlmin = require('gulp-htmlmin'),
webpack = require('webpack-stream'),
imagemin = require('gulp-imagemin');
I've changed it to
const gulp = require('gulp'),
browserSync = require('browser-sync'),
sass = require('gulp-sass')(require('sass')),
rename = require('gulp-rename'),
autoprefixer = require('gulp-autoprefixer'),
cleanCSS = require('gulp-clean-css'),
htmlmin = require('gulp-htmlmin'),
webpack = require('webpack-stream'),
imagemin = require('gulp-imagemin');
But it goes with error:
Error [ERR_REQUIRE_ASYNC_MODULE]: require() cannot be used on an ESM graph with top-level await.
Use import() instead.
To see where the top-level await comes from, use --experimental-print-required-tla.
at ModuleJobSync.runSync (node:internal/modules/esm/module_job:393:13)
at ModuleLoader.importSyncForRequire (node:internal/modules/esm/loader:366:47)
at loadESMFromCJS (node:internal/modules/cjs/loader:1554:24)
at Module._compile (node:internal/modules/cjs/loader:1705:5)
at Object..js (node:internal/modules/cjs/loader:1888:10)
at Module.load (node:internal/modules/cjs/loader:1458:32)
at Function._load (node:internal/modules/cjs/loader:1275:12)
at TracingChannel.traceSync (node:diagnostics_channel:322:14)
at wrapModuleLoad (node:internal/modules/cjs/loader:234:24)
at Module.require (node:internal/modules/cjs/loader:1480:12) { code: 'ERR_REQUIRE_ASYNC_MODULE' }