Skip to content

Commit

Permalink
merge changes from upstream RC branch 0.27.1
Browse files Browse the repository at this point in the history
  • Loading branch information
vrsandeep authored Dec 13, 2024
2 parents 37b23bf + 37f0129 commit 8ba3aac
Show file tree
Hide file tree
Showing 26 changed files with 1,828 additions and 1,705 deletions.
11 changes: 11 additions & 0 deletions .eslintrc.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
module.exports = {
parser: '@babel/eslint-parser',
parserOptions: { requireConfigFile: false },
plugins: ['prettier'],
rules: {
eqeqeq: ['error', 'always'],
'object-shorthand': ['error', 'always'],
'prettier/prettier': 'error',
'no-var': 'error',
},
};
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -14,3 +14,6 @@ public/img/*.svg
public/js/*.min.js
public/css/*.css
public/webfonts
.idea/
.tool-versions
data/
6 changes: 6 additions & 0 deletions .prettierrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
{
"singleQuote": true,
"trailingComma": "all",
"printWidth": 80,
"tabWidth": 2
}
1 change: 1 addition & 0 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,7 @@ test:
check:
crystal tool format --check
./bin/ameba
yarn lint

arm32v7:
crystal build src/mango.cr --release --progress --error-trace --cross-compile --target='arm-linux-gnueabihf' -o mango-arm32v7
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,7 @@ The official docker images are available on [Dockerhub](https://hub.docker.com/r
### CLI

```
Mango - Manga Server and Web Reader. Version 0.27.0
Mango - Manga Server and Web Reader. Version 0.27.1
Usage:
Expand Down
85 changes: 50 additions & 35 deletions gulpfile.js
Original file line number Diff line number Diff line change
Expand Up @@ -5,63 +5,78 @@ const minifyCss = require('gulp-minify-css');
const less = require('gulp-less');

gulp.task('copy-img', () => {
return gulp.src('node_modules/uikit/src/images/backgrounds/*.svg')
.pipe(gulp.dest('public/img'));
return gulp
.src('node_modules/uikit/src/images/backgrounds/*.svg')
.pipe(gulp.dest('public/img'));
});

gulp.task('copy-font', () => {
return gulp.src('node_modules/@fortawesome/fontawesome-free/webfonts/fa-solid-900.woff**')
.pipe(gulp.dest('public/webfonts'));
return gulp
.src(
'node_modules/@fortawesome/fontawesome-free/webfonts/fa-solid-900.woff**',
)
.pipe(gulp.dest('public/webfonts'));
});

// Copy files from node_modules
gulp.task('node-modules-copy', gulp.parallel('copy-img', 'copy-font'));

// Compile less
gulp.task('less', () => {
return gulp.src([
'public/css/mango.less',
'public/css/tags.less'
])
.pipe(less())
.pipe(gulp.dest('public/css'));
return gulp
.src(['public/css/mango.less', 'public/css/tags.less'])
.pipe(less())
.pipe(gulp.dest('public/css'));
});

// Transpile and minify JS files and output to dist
gulp.task('babel', () => {
return gulp.src(['public/js/*.js', '!public/js/*.min.js'])
.pipe(babel({
presets: [
['@babel/preset-env', {
targets: '>0.25%, not dead, ios>=9'
}]
],
}))
.pipe(minify({
removeConsole: true,
builtIns: false
}))
.pipe(gulp.dest('dist/js'));
return gulp
.src(['public/js/*.js', '!public/js/*.min.js'])
.pipe(
babel({
presets: [
[
'@babel/preset-env',
{
targets: '>0.25%, not dead, ios>=9',
},
],
],
}),
)
.pipe(
minify({
removeConsole: true,
builtIns: false,
}),
)
.pipe(gulp.dest('dist/js'));
});

// Minify CSS and output to dist
gulp.task('minify-css', () => {
return gulp.src('public/css/*.css')
.pipe(minifyCss())
.pipe(gulp.dest('dist/css'));
return gulp
.src('public/css/*.css')
.pipe(minifyCss())
.pipe(gulp.dest('dist/css'));
});

// Copy static files (includeing images) to dist
gulp.task('copy-files', () => {
return gulp.src([
'public/*.*',
'public/img/**',
'public/webfonts/*',
'public/js/*.min.js'
], {
base: 'public'
})
.pipe(gulp.dest('dist'));
return gulp
.src(
[
'public/*.*',
'public/img/**',
'public/webfonts/*',
'public/js/*.min.js',
],
{
base: 'public',
},
)
.pipe(gulp.dest('dist'));
});

// Set up the public folder for development
Expand Down
11 changes: 8 additions & 3 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -6,20 +6,25 @@
"author": "Alex Ling <[email protected]>",
"license": "MIT",
"devDependencies": {
"@babel/eslint-parser": "^7.18.9",
"@babel/preset-env": "^7.11.5",
"all-contributors-cli": "^6.19.0",
"eslint": "^8.22.0",
"eslint-plugin-prettier": "^4.2.1",
"gulp": "^4.0.2",
"gulp-babel": "^8.0.0",
"gulp-babel-minify": "^0.5.1",
"gulp-less": "^4.0.1",
"gulp-minify-css": "^1.2.4",
"less": "^3.11.3"
"less": "^3.11.3",
"prettier": "^2.7.1"
},
"scripts": {
"uglify": "gulp"
"uglify": "gulp",
"lint": "eslint public/js *.js --ext .js"
},
"dependencies": {
"@fortawesome/fontawesome-free": "^5.14.0",
"uikit": "^3.5.4"
"uikit": "~3.14.0"
}
}
106 changes: 52 additions & 54 deletions public/js/admin.js
Original file line number Diff line number Diff line change
@@ -1,58 +1,56 @@
const component = () => {
return {
progress: 1.0,
generating: false,
scanning: false,
scanTitles: 0,
scanMs: -1,
themeSetting: '',
return {
progress: 1.0,
generating: false,
scanning: false,
scanTitles: 0,
scanMs: -1,
themeSetting: '',

init() {
this.getProgress();
setInterval(() => {
this.getProgress();
}, 5000);
init() {
this.getProgress();
setInterval(() => {
this.getProgress();
}, 5000);

const setting = loadThemeSetting();
this.themeSetting = setting.charAt(0).toUpperCase() + setting.slice(1);
},
themeChanged(event) {
const newSetting = $(event.currentTarget).val().toLowerCase();
saveThemeSetting(newSetting);
setTheme();
},
scan() {
if (this.scanning) return;
this.scanning = true;
this.scanMs = -1;
this.scanTitles = 0;
$.post(`${base_url}api/admin/scan`)
.then(data => {
this.scanMs = data.milliseconds;
this.scanTitles = data.titles;
})
.catch(e => {
alert('danger', `Failed to trigger a scan. Error: ${e}`);
})
.always(() => {
this.scanning = false;
});
},
generateThumbnails() {
if (this.generating) return;
this.generating = true;
this.progress = 0.0;
$.post(`${base_url}api/admin/generate_thumbnails`)
.then(() => {
this.getProgress()
});
},
getProgress() {
$.get(`${base_url}api/admin/thumbnail_progress`)
.then(data => {
this.progress = data.progress;
this.generating = data.progress > 0;
});
},
};
const setting = loadThemeSetting();
this.themeSetting = setting.charAt(0).toUpperCase() + setting.slice(1);
},
themeChanged(event) {
const newSetting = $(event.currentTarget).val().toLowerCase();
saveThemeSetting(newSetting);
setTheme();
},
scan() {
if (this.scanning) return;
this.scanning = true;
this.scanMs = -1;
this.scanTitles = 0;
$.post(`${base_url}api/admin/scan`)
.then((data) => {
this.scanMs = data.milliseconds;
this.scanTitles = data.titles;
})
.catch((e) => {
alert('danger', `Failed to trigger a scan. Error: ${e}`);
})
.always(() => {
this.scanning = false;
});
},
generateThumbnails() {
if (this.generating) return;
this.generating = true;
this.progress = 0.0;
$.post(`${base_url}api/admin/generate_thumbnails`).then(() => {
this.getProgress();
});
},
getProgress() {
$.get(`${base_url}api/admin/thumbnail_progress`).then((data) => {
this.progress = data.progress;
this.generating = data.progress > 0;
});
},
};
};
8 changes: 4 additions & 4 deletions public/js/alert.js
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
const alert = (level, text) => {
$('#alert').empty();
const html = `<div class="uk-alert-${level}" uk-alert><a class="uk-alert-close" uk-close></a><p>${text}</p></div>`;
$('#alert').append(html);
$("html, body").animate({ scrollTop: 0 });
$('#alert').empty();
const html = `<div class="uk-alert-${level}" uk-alert><a class="uk-alert-close" uk-close></a><p>${text}</p></div>`;
$('#alert').append(html);
$('html, body').animate({ scrollTop: 0 });
};
Loading

0 comments on commit 8ba3aac

Please sign in to comment.