@bytehide/react-native-shield
Version:
React Native plugin for ByteHide Shield obfuscation.
38 lines (34 loc) • 914 B
JavaScript
const gulp = require('gulp');
const {bytehideShieldPlugin} = require('@bytehide/gulp-shield');
// Configuration object for the plugin
const config = {
projectToken: process.env.BYTEHIDE_PROJECT_TOKEN || 'your_project_token'
};
// Main obfuscation task
gulp.task('obfuscate', () => {
return gulp.src([
'./src/**/*.js',
'./src/**/*.jsx',
'!./src/**/__tests__/**',
'!./src/**/*.test.js',
'!./src/**/*.spec.js'
])
.pipe(bytehideShieldPlugin({
projectToken: config.projectToken,
replace: false,
obfuscatedExtension: '.obf',
exclude: [],
config: {
controlFlowFlattening: true,
debugProtection: true,
devtoolsBlocking: true
}
}))
.pipe(gulp.dest('./dist'));
});
// Watch task for development
gulp.task('watch', () => {
gulp.watch('./src/**/*.js', gulp.series('obfuscate'));
});
// Default task
gulp.task('default', gulp.series('obfuscate'));