Files
UT-Registration-Plus/gulpfile.js
2024-10-16 17:13:44 -05:00

41 lines
1.1 KiB
JavaScript

// (Thanks go to https://github.com/pnd280/complexity/blob/alpha/gulpfile.js)
import fs from 'fs';
import gulp from 'gulp';
import gulpZip from 'gulp-zip';
import { createRequire } from 'module';
function zip() {
const require = createRequire(import.meta.url);
const manifest = require('./package.json');
const zipFileName = `${manifest.name.replaceAll(' ', '-')}-${manifest.version}.zip`;
return gulp
.src('dist/**', {
encoding: false,
})
.pipe(gulpZip(zipFileName))
.pipe(gulp.dest('package'));
}
// Temp fix for CSP on Chrome 130
// Manually remove them because there is no option to disable use_dynamic_url on @crxjs/vite-plugin
function forceDisableUseDynamicUrl(done) {
const require = createRequire(import.meta.url);
const manifest = require('./dist/manifest.json');
manifest.web_accessible_resources.forEach(resource => {
delete resource.use_dynamic_url;
});
if (!fs.existsSync('./dist/manifest.json')) {
return done();
}
fs.writeFileSync('./dist/manifest.json', JSON.stringify(manifest, null, 2));
done();
}
export { forceDisableUseDynamicUrl, zip };