-
Matthias Konitzny authoredMatthias Konitzny authored
gulpfile.js 1.55 KiB
// Gulp.js configuration
"use strict";
const gulp = require("gulp");
const replace = require("gulp-replace");
const zip = require("gulp-zip");
const del = require("del");
const dir = {
src: ".",
build: "./release/",
};
// PHP settings
const php = {
src: [dir.src + "/**/*.php", "!node_modules/**", "!release/**"],
build: dir.build,
};
const parcel = {
src: "./build/release/**",
build: dir.build + "build/release/",
};
function clean() {
return del(dir.build + "**", { force: true });
}
function copyPHP() {
return gulp
.src(php.src)
.pipe(
replace(
"$GLOBALS['build'] = 'debug';",
"$GLOBALS['build'] = 'release';"
)
)
.pipe(gulp.dest(php.build));
}
function copyParcel() {
return gulp.src(parcel.src).pipe(gulp.dest(parcel.build));
}
function zipBuild() {
return gulp
.src(dir.build + "**")
.pipe(zip("knowledge-space.zip"))
.pipe(gulp.dest(dir.build));
}
function copyDefaultSpace() {
return gulp
.src("datasets/space.json")
.pipe(gulp.dest(dir.build + "datasets/"));
}
function copyEditorIcons() {
return gulp
.src("editor/images/**/*.png")
.pipe(gulp.dest(dir.build + "editor/images/"));
}
function copyBackground() {
return gulp
.src("backgrounds/background_4.jpg")
.pipe(gulp.dest(dir.build + "backgrounds/"));
}
exports.build = gulp.series(
clean,
copyPHP,
copyParcel,
copyDefaultSpace,
copyEditorIcons,
copyBackground,
zipBuild
);