1
0
mirror of https://github.com/tobspr/shapez.io.git synced 2025-12-13 10:11:50 +00:00
tobspr_shapez.io/gulp/js.js

78 lines
2.1 KiB
JavaScript
Raw Normal View History

import gulp from "gulp";
2024-04-25 02:19:31 +00:00
import webpack from "webpack";
import { BUILD_VARIANTS } from "./build_variants.js";
2024-04-25 02:19:31 +00:00
import { buildFolder } from "./config.js";
2020-05-09 14:45:23 +00:00
import webpackConfig from "./webpack.config.js";
import webpackProductionConfig from "./webpack.production.config.js";
import webpackStream from "webpack-stream";
import gulpRename from "gulp-rename";
2020-05-09 14:45:23 +00:00
2022-06-06 12:06:09 +00:00
/**
* PROVIDES (per <variant>)
*
* js.<variant>.dev.watch
* js.<variant>.dev
* js.<variant>.prod
*
*/
//// DEV
2020-05-09 14:45:23 +00:00
export default Object.fromEntries(
Object.entries(BUILD_VARIANTS).map(([variant, data]) => {
function build() {
return gulp
.src("../src/js/main.js")
2024-04-25 02:19:31 +00:00
.pipe(webpackStream(webpackConfig, webpack))
.pipe(gulp.dest(buildFolder));
}
const dev = {
build,
};
2022-06-06 12:06:09 +00:00
let prod;
2022-06-06 12:06:09 +00:00
if (!data.standalone) {
// WEB
function transpiled() {
2022-06-06 12:06:09 +00:00
return gulp
.src("../src/js/main.js")
2024-04-25 02:19:31 +00:00
.pipe(webpackStream(webpackProductionConfig, webpack))
.pipe(gulpRename("bundle-transpiled.js"))
2022-06-06 12:06:09 +00:00
.pipe(gulp.dest(buildFolder));
}
2022-06-06 12:06:09 +00:00
function es6() {
2022-06-06 12:06:09 +00:00
return gulp
.src("../src/js/main.js")
2024-04-25 02:19:31 +00:00
.pipe(webpackStream(webpackProductionConfig, webpack))
2022-06-06 12:06:09 +00:00
.pipe(gulp.dest(buildFolder));
}
2022-06-16 08:35:58 +00:00
prod = {
transpiled,
es6,
build:
// transpiled currently not used
// gulp.parallel("js." + variant + ".prod.transpiled", "js." + variant + ".prod.es6")
es6,
};
2022-06-06 12:06:09 +00:00
} else {
// STANDALONE
function build() {
2022-06-06 12:06:09 +00:00
return gulp
.src("../src/js/main.js")
2024-04-25 02:19:31 +00:00
.pipe(webpackStream(webpackProductionConfig, webpack))
2022-06-06 12:06:09 +00:00
.pipe(gulp.dest(buildFolder));
}
prod = { build };
2022-06-06 12:06:09 +00:00
}
return [variant, { dev, prod }];
})
);