diff --git a/package.json b/package.json index d81c44dd6..e917d516f 100644 --- a/package.json +++ b/package.json @@ -18,7 +18,7 @@ "migrateandstart": "yarn migrate && yarn start", "gulp": "gulp build", "watch": "yarn dev", - "dev": "node ./scripts/dev.js", + "dev": "node ./scripts/dev.mjs", "lint": "yarn workspaces foreach run lint", "cy:open": "cypress open --browser --e2e --config-file=cypress.config.ts", "cy:run": "cypress run", @@ -26,8 +26,8 @@ "mocha": "yarn workspace backend run mocha", "test": "yarn mocha", "format": "gulp format", - "clean": "node ./scripts/clean.js", - "clean-all": "node ./scripts/clean-all.js", + "clean": "node ./scripts/clean.mjs", + "clean-all": "node ./scripts/clean-all.mjs", "cleanall": "yarn clean-all" }, "resolutions": { diff --git a/scripts/clean-all.js b/scripts/clean-all.js deleted file mode 100644 index 58833bb01..000000000 --- a/scripts/clean-all.js +++ /dev/null @@ -1,17 +0,0 @@ -const fs = require('fs'); - -fs.rmSync(__dirname + '/../packages/backend/built', { recursive: true, force: true }); -fs.rmSync(__dirname + '/../packages/backend/tsconfig.tsbuildinfo', { force: true }); -fs.rmSync(__dirname + '/../packages/backend/node_modules', { recursive: true, force: true }); - -fs.rmSync(__dirname + '/../packages/client/built', { recursive: true, force: true }); -fs.rmSync(__dirname + '/../packages/client/node_modules', { recursive: true, force: true }); - -fs.rmSync(__dirname + '/../packages/foundkey-js/built', { recursive: true, force: true }); -fs.rmSync(__dirname + '/../packages/foundkey-js/node_modules', { recursive: true, force: true }); - -fs.rmSync(__dirname + '/../packages/sw/built', { recursive: true, force: true }); -fs.rmSync(__dirname + '/../packages/sw/node_modules', { recursive: true, force: true }); - -fs.rmSync(__dirname + '/../built', { recursive: true, force: true }); -fs.rmSync(__dirname + '/../node_modules', { recursive: true, force: true }); diff --git a/scripts/clean-all.mjs b/scripts/clean-all.mjs new file mode 100644 index 000000000..e27ad4d47 --- /dev/null +++ b/scripts/clean-all.mjs @@ -0,0 +1,14 @@ +import { files, clean } from './clean.mjs'; + +const allFiles = [ + ...files, + '/../packages/backend/node_modules', + '/../packages/client/node_modules', + '/../packages/foundkey-js/node_modules', + '/../packages/sw/node_modules', + '/../node_modules', +]; + +for (const file of allFiles) { + clean(file); +} diff --git a/scripts/clean.js b/scripts/clean.js deleted file mode 100644 index 2a96b73cc..000000000 --- a/scripts/clean.js +++ /dev/null @@ -1,8 +0,0 @@ -const fs = require('fs'); - -fs.rmSync(__dirname + '/../packages/backend/built', { recursive: true, force: true }); -fs.rmSync(__dirname + '/../packages/backend/tsconfig.tsbuildinfo', { force: true }); -fs.rmSync(__dirname + '/../packages/client/built', { recursive: true, force: true }); -fs.rmSync(__dirname + '/../packages/foundkey-js/built', { recursive: true, force: true }); -fs.rmSync(__dirname + '/../packages/sw/built', { recursive: true, force: true }); -fs.rmSync(__dirname + '/../built', { recursive: true, force: true }); diff --git a/scripts/clean.mjs b/scripts/clean.mjs new file mode 100644 index 000000000..a70150c86 --- /dev/null +++ b/scripts/clean.mjs @@ -0,0 +1,19 @@ +import { rmSync } from 'fs'; +import { __dirname } from './common.mjs'; + +export const files = [ + '/../packages/backend/built', + '/../packages/backend/tsconfig.tsbuildinfo', + '/../packages/client/built', + '/../packages/foundkey-js/built', + '/../packages/sw/built', + '/../built', +]; + +export function clean(filename) { + rmSync(__dirname + filename, { recursive: true, force: true }); +} + +for (const file of files) { + clean(file); +} diff --git a/scripts/common.mjs b/scripts/common.mjs new file mode 100644 index 000000000..4593a3df3 --- /dev/null +++ b/scripts/common.mjs @@ -0,0 +1,5 @@ +import { fileURLToPath } from 'node:url'; +import { dirname } from 'node:path'; + +export const __filename = fileURLToPath(import.meta.url); +export const __dirname = dirname(__filename); diff --git a/scripts/dev.js b/scripts/dev.js deleted file mode 100644 index 034ea97a7..000000000 --- a/scripts/dev.js +++ /dev/null @@ -1,54 +0,0 @@ -const execa = require('execa'); - -(async () => { - await execa('npm', ['run', 'clean'], { - cwd: __dirname + '/../', - stdout: process.stdout, - stderr: process.stderr, - }); - - await execa('npm', ['run', 'build'], { - cwd: __dirname + '/../packages/foundkey-js', - stdout: process.stdout, - stderr: process.stderr, - }); - - execa('npx', ['gulp', 'watch'], { - cwd: __dirname + '/../', - stdout: process.stdout, - stderr: process.stderr, - }); - - execa('npm', ['run', 'watch'], { - cwd: __dirname + '/../packages/backend', - stdout: process.stdout, - stderr: process.stderr, - }); - - execa('npm', ['run', 'watch'], { - cwd: __dirname + '/../packages/client', - stdout: process.stdout, - stderr: process.stderr, - }); - - execa('npm', ['run', 'watch'], { - cwd: __dirname + '/../packages/sw', - stdout: process.stdout, - stderr: process.stderr, - }); - - const start = async () => { - try { - await execa('npm', ['run', 'start'], { - cwd: __dirname + '/../', - stdout: process.stdout, - stderr: process.stderr, - }); - } catch (e) { - await new Promise(resolve => setTimeout(resolve, 3000)); - start(); - } - }; - - start(); -})(); diff --git a/scripts/dev.mjs b/scripts/dev.mjs new file mode 100644 index 000000000..cb1eb2615 --- /dev/null +++ b/scripts/dev.mjs @@ -0,0 +1,52 @@ +import execa from 'execa'; +import { __dirname } from './common.mjs'; + +await execa('npm', ['run', 'clean'], { + cwd: __dirname + '/../', + stdout: process.stdout, + stderr: process.stderr, +}); + +await execa('npm', ['run', 'build'], { + cwd: __dirname + '/../packages/foundkey-js', + stdout: process.stdout, + stderr: process.stderr, +}); + +execa('npx', ['gulp', 'watch'], { + cwd: __dirname + '/../', + stdout: process.stdout, + stderr: process.stderr, +}); + +execa('npm', ['run', 'watch'], { + cwd: __dirname + '/../packages/backend', + stdout: process.stdout, + stderr: process.stderr, +}); + +execa('npm', ['run', 'watch'], { + cwd: __dirname + '/../packages/client', + stdout: process.stdout, + stderr: process.stderr, +}); + +execa('npm', ['run', 'watch'], { + cwd: __dirname + '/../packages/sw', + stdout: process.stdout, + stderr: process.stderr, +}); + +const start = async () => { + try { + await execa('npm', ['run', 'start'], { + cwd: __dirname + '/../', + stdout: process.stdout, + stderr: process.stderr, + }); + } catch (e) { + setTimeout(start, 3000); + } +}; + +start();