@busy-hour/blaze-types
Version:
<h1 align='center'>🔥 Blaze Types</h1> <div align='center'> An event driven framework for 🔥 Hono.js </div>
37 lines (36 loc) • 1.07 kB
JavaScript
// src/lib/create-plugin.ts
import chokidar from "chokidar";
import { tsModule } from "../utils/module.js";
import { getServicesPaths } from "./service-loader.js";
import { writeDefinition } from "./writer.js";
function createPlugin(info) {
tsModule.setTsInfo(info);
tsModule.setRootPath(info.project.getCurrentDirectory());
tsModule.setConfig(info.config);
const services = getServicesPaths();
tsModule.logger(`Starting up plugin!`);
tsModule.logger(`Watching on: ${services.join(", ")}`);
for (const service of services) {
const watcher = chokidar.watch(service);
watcher.on("all", (evtName) => {
switch (evtName) {
case "add":
tsModule.logger(`New service added!`);
break;
case "change":
tsModule.logger(`Current service modified!`);
break;
case "unlink":
case "unlinkDir":
default:
tsModule.logger(`Current service deleted!`);
break;
}
writeDefinition();
});
}
return info.languageService;
}
export {
createPlugin
};