up
This commit is contained in:
parent
3c4bbf8aa7
commit
76542e6859
@ -43,12 +43,6 @@ fs.writeFileSync(
|
|||||||
)
|
)
|
||||||
);
|
);
|
||||||
|
|
||||||
const destSrcDirPath = pathJoin(rootDirPath, "dist", "src");
|
|
||||||
|
|
||||||
fs.rmSync(destSrcDirPath, { recursive: true, force: true });
|
|
||||||
|
|
||||||
fs.cpSync(pathJoin(rootDirPath, "src"), destSrcDirPath, { recursive: true });
|
|
||||||
|
|
||||||
const commonThirdPartyDeps = (() => {
|
const commonThirdPartyDeps = (() => {
|
||||||
// For example [ "@emotion" ] it's more convenient than
|
// For example [ "@emotion" ] it's more convenient than
|
||||||
// having to list every sub emotion packages (@emotion/css @emotion/utils ...)
|
// having to list every sub emotion packages (@emotion/css @emotion/utils ...)
|
||||||
|
@ -1,6 +1,11 @@
|
|||||||
import * as child_process from "child_process";
|
import * as child_process from "child_process";
|
||||||
import * as fs from "fs";
|
import * as fs from "fs";
|
||||||
import { join } from "path";
|
import { join } from "path";
|
||||||
|
import { waitForDebounceFactory } from "powerhooks/tools/waitForDebounce";
|
||||||
|
import chokidar from "chokidar";
|
||||||
|
import * as runExclusive from "run-exclusive";
|
||||||
|
import { Deferred } from "evt/tools/Deferred";
|
||||||
|
import chalk from "chalk";
|
||||||
|
|
||||||
fs.rmSync("node_modules", { recursive: true, force: true });
|
fs.rmSync("node_modules", { recursive: true, force: true });
|
||||||
fs.rmSync("dist", { recursive: true, force: true });
|
fs.rmSync("dist", { recursive: true, force: true });
|
||||||
@ -18,7 +23,31 @@ run("yarn install", { cwd: join("..", "keycloakify-starter") });
|
|||||||
|
|
||||||
run(`npx ts-node --skipProject ${join("scripts", "link-in-app.ts")} keycloakify-starter`);
|
run(`npx ts-node --skipProject ${join("scripts", "link-in-app.ts")} keycloakify-starter`);
|
||||||
|
|
||||||
run(`npx chokidar '${join("src", "**", "*")}' -c 'yarn build'`);
|
const { waitForDebounce } = waitForDebounceFactory({ delay: 400 });
|
||||||
|
|
||||||
|
const runYarnBuild = runExclusive.build(() => {
|
||||||
|
const dCompleted = new Deferred<void>();
|
||||||
|
|
||||||
|
const child = child_process.spawn("yarn", ["build"], {
|
||||||
|
env: process.env
|
||||||
|
});
|
||||||
|
|
||||||
|
child.stdout.on("data", data => process.stdout.write(data));
|
||||||
|
|
||||||
|
child.stderr.on("data", data => process.stderr.write(data));
|
||||||
|
|
||||||
|
child.on("exit", () => dCompleted.resolve());
|
||||||
|
|
||||||
|
return dCompleted.pr;
|
||||||
|
});
|
||||||
|
|
||||||
|
console.log(chalk.green("Watching for changes in src/"));
|
||||||
|
|
||||||
|
chokidar.watch("src", { ignoreInitial: true }).on("all", async () => {
|
||||||
|
await waitForDebounce();
|
||||||
|
|
||||||
|
runYarnBuild();
|
||||||
|
});
|
||||||
|
|
||||||
function run(command: string, options?: { cwd: string }) {
|
function run(command: string, options?: { cwd: string }) {
|
||||||
console.log(`$ ${command}`);
|
console.log(`$ ${command}`);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user