ionian/packages/server/src/diff/watcher/comic_watcher.ts
2024-10-07 01:14:42 +09:00

13 lines
583 B
TypeScript

import { ComicConfig } from "./ComicConfig.ts";
import { WatcherCompositer } from "./compositer.ts";
import { RecursiveWatcher } from "./recursive_watcher.ts";
import { WatcherFilter } from "./watcher_filter.ts";
const createComicWatcherBase = (path: string) => {
return new WatcherFilter(new RecursiveWatcher(path), (x) => x.endsWith(".zip"));
};
export const createComicWatcher = () => {
const file = ComicConfig.get_config_file();
console.log(`register comic ${file.watch.join(",")}`);
return new WatcherCompositer(file.watch.map((path) => createComicWatcherBase(path)));
};