2
1
Fork 0
mirror of https://github.com/TryGhost/Ghost.git synced 2023-12-13 21:00:40 +01:00

Added tailwind watch for dev mode

- adds auto compile for tailwind in dev mode
This commit is contained in:
Rishabh 2022-07-05 11:53:27 +02:00
parent d0acbad698
commit 1164bacd24
2 changed files with 32 additions and 1 deletions

View file

@ -31,7 +31,8 @@
"ship": "STATUS=$(git status --porcelain); echo $STATUS; if [ -z \"$STATUS\" ]; then yarn publish && git push ${GHOST_UPSTREAM:-upstream} main --follow-tags; fi", "ship": "STATUS=$(git status --porcelain); echo $STATUS; if [ -z \"$STATUS\" ]; then yarn publish && git push ${GHOST_UPSTREAM:-upstream} main --follow-tags; fi",
"posttest": "yarn lint", "posttest": "yarn lint",
"analyze": "source-map-explorer 'umd/*.js'", "analyze": "source-map-explorer 'umd/*.js'",
"prepublishOnly": "yarn build" "prepublishOnly": "yarn build",
"tailwind": "npx tailwindcss -i ./src/index.css -o ./public/main.css --watch"
}, },
"eslintConfig": { "eslintConfig": {
"extends": [ "extends": [

View file

@ -9,6 +9,7 @@ const log = console.log;
/* eslint-enable no-console */ /* eslint-enable no-console */
let yarnStartProcess; let yarnStartProcess;
let tailwindServerProcess;
let stdOutChunks = []; let stdOutChunks = [];
let stdErrChunks = []; let stdErrChunks = [];
let startYarnOutput = false; let startYarnOutput = false;
@ -55,6 +56,7 @@ function printInstructions() {
function onProcessClose(code) { function onProcessClose(code) {
yarnStartProcess = null; yarnStartProcess = null;
tailwindServerProcess = null;
stdErrChunks = []; stdErrChunks = [];
stdOutChunks = []; stdOutChunks = [];
log(chalk.redBright.bold.underline(`Please restart the script...\n`)); log(chalk.redBright.bold.underline(`Please restart the script...\n`));
@ -99,6 +101,33 @@ function doYarnStart() {
} }
} }
function doTailwindServerStart() {
if (tailwindServerProcess) {
return;
}
const options = getBuildOptions();
tailwindServerProcess = spawn('yarn tailwind', options);
['SIGINT', 'SIGTERM'].forEach(function (sig) {
tailwindServerProcess.on(sig, function () {
tailwindServerProcess && tailwindServerProcess.exit();
});
});
tailwindServerProcess.on('close', onProcessClose);
if (!showVerbose) {
tailwindServerProcess.stdout.on('data', (data) => {
stdOutChunks.push(data);
printYarnProcessOutput(data);
});
tailwindServerProcess.stderr.on('data', (data) => {
log(Buffer.from(data).toString());
stdErrChunks.push(data);
});
}
}
function printYarnProcessOutput(data) { function printYarnProcessOutput(data) {
const dataStr = Buffer.from(data).toString(); const dataStr = Buffer.from(data).toString();
const dataArr = dataStr.split('\n').filter((d) => { const dataArr = dataStr.split('\n').filter((d) => {
@ -144,6 +173,7 @@ function startDevServer() {
log(chalk.whiteBright(`Comments dev server is running on http://localhost:${port}`)); log(chalk.whiteBright(`Comments dev server is running on http://localhost:${port}`));
printInstructions(); printInstructions();
doYarnStart(); doYarnStart();
doTailwindServerStart();
}); });
} }