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

37 lines
1.2 KiB
JavaScript
Raw Normal View History

import path from "path/posix";
import fs from "fs/promises";
import gulp from "gulp";
2020-05-09 14:45:23 +00:00
import gulpRename from "gulp-rename";
import stripJsonComments from "strip-json-comments";
export function convertJsToTs() {
return gulp
.src(path.join("..", "src", "js", "**", "*.js"))
.pipe(
gulpRename(path => {
path.extname = ".ts";
})
)
.pipe(gulp.dest(path.join("..", "tsc_temp")));
}
2020-05-09 14:45:23 +00:00
export async function copyTsconfigForHints() {
const src = (await fs.readFile(path.join("..", "src", "tsconfig.json"))).toString();
const baseConfig = JSON.parse(stripJsonComments(src));
2020-05-09 14:45:23 +00:00
baseConfig.allowJs = false;
baseConfig.checkJs = false;
baseConfig.declaration = true;
baseConfig.noEmit = false;
baseConfig.strict = false;
baseConfig.strictFunctionTypes = false;
baseConfig.strictBindCallApply = false;
baseConfig.alwaysStrict = false;
baseConfig.composite = true;
baseConfig.outFile = "bundled-ts.js";
await fs.writeFile(path.join("..", "tsc_temp", "tsconfig.json"), JSON.stringify(baseConfig));
2020-05-09 14:45:23 +00:00
}
export const prepareDocs = gulp.series(convertJsToTs, copyTsconfigForHints);