86 lines
1.9 KiB
JavaScript
86 lines
1.9 KiB
JavaScript
"use strict";
|
|
var gulp = require("gulp");
|
|
var injectPartials = require("gulp-inject-partials");
|
|
var inject = require("gulp-inject");
|
|
var rename = require("gulp-rename");
|
|
var prettify = require("gulp-prettify");
|
|
var replace = require("gulp-replace");
|
|
var merge = require("merge-stream");
|
|
|
|
/* inject partials like sidebar and navbar */
|
|
gulp.task("injectPartial", function () {
|
|
return gulp
|
|
.src("./**/*.html", {
|
|
base: "./",
|
|
})
|
|
.pipe(injectPartials())
|
|
.pipe(gulp.dest("."));
|
|
});
|
|
|
|
/* inject Js and CCS assets into HTML */
|
|
gulp.task("injectAssets", function () {
|
|
return gulp
|
|
.src(["./**/*.html"])
|
|
.pipe(
|
|
inject(
|
|
gulp.src(
|
|
[
|
|
"./assets/vendors/mdi/css/materialdesignicons.min.css",
|
|
"./assets/vendors/flag-icon-css/css/flag-icon.min.css",
|
|
"./assets/vendors/css/vendor.bundle.base.css",
|
|
"./assets/vendors/js/vendor.bundle.base.js",
|
|
],
|
|
{
|
|
read: false,
|
|
}
|
|
),
|
|
{
|
|
name: "plugins",
|
|
relative: true,
|
|
}
|
|
)
|
|
)
|
|
.pipe(
|
|
inject(
|
|
gulp.src(
|
|
[
|
|
// './assets/css/shared/style.css',
|
|
"./assets/js/off-canvas.js",
|
|
"./assets/js/hoverable-collapse.js",
|
|
"./assets/js/misc.js",
|
|
],
|
|
{
|
|
read: false,
|
|
}
|
|
),
|
|
{
|
|
relative: true,
|
|
}
|
|
)
|
|
)
|
|
.pipe(gulp.dest("."));
|
|
});
|
|
|
|
/*replace image path and linking after injection*/
|
|
|
|
gulp.task("html-beautify", function () {
|
|
return gulp
|
|
.src(["./**/*.html", "!node_modules/**/*.html"])
|
|
.pipe(
|
|
prettify({
|
|
unformatted: ["pre", "code", "textarea"],
|
|
})
|
|
)
|
|
.pipe(
|
|
gulp.dest(function (file) {
|
|
return file.base;
|
|
})
|
|
);
|
|
});
|
|
|
|
/*sequence for injecting partials and replacing paths*/
|
|
gulp.task(
|
|
"inject",
|
|
gulp.series("injectPartial", "injectAssets", "html-beautify")
|
|
);
|