Add timeout to watcher

This commit is contained in:
Benjamin Toby 2024-10-16 10:02:16 +01:00
parent f56a63b2f2
commit e6faacd52f
3 changed files with 11 additions and 30 deletions

View File

@ -5,6 +5,10 @@ const path = require("path");
const { execSync } = require("child_process");
const delay = require("../../utils/delay");
/** @type {any} */
let timeout;
const UPDATE_TIMEOUT = 5000;
/**
*
* @param {SyncFoldersFnParams} param0
@ -82,8 +86,12 @@ async function watchFolders({ folders, options }) {
await delay();
fs.watch(dirPath, { recursive: true }, (evt, fileName) => {
sync({ dirPath, dirs, options });
process.exit(1);
clearTimeout(timeout);
timeout = setTimeout(() => {
sync({ dirPath, dirs, options });
process.exit(1);
}, UPDATE_TIMEOUT);
});
}
}

View File

@ -1,6 +1,6 @@
{
"name": "turbosync",
"version": "1.2.1",
"version": "1.3.0",
"module": "index.js",
"scripts": {
"start": "node index.ts",

View File

@ -1,27 +0,0 @@
{
"compilerOptions": {
"target": "ES2015",
"module": "ESNext",
"moduleDetection": "force",
"jsx": "react-jsx",
"allowJs": true,
"moduleResolution": "bundler",
"allowImportingTsExtensions": true,
"verbatimModuleSyntax": true,
"noEmit": true,
"strict": true,
"skipLibCheck": true,
"noFallthroughCasesInSwitch": true,
"emitDeclarationOnly": true,
"noUnusedLocals": false,
"noUnusedParameters": false,
"declaration": true,
"outDir": "dump/dist",
"noPropertyAccessFromIndexSignature": false
},
"include": ["index.ts", "index.d.ts", "**/*.ts"],
"exclude": ["dump"]
}