UNPKG

@push.rocks/smartchok

Version:

A cross-runtime file watcher with glob pattern support for Node.js, Deno, and Bun.

29 lines 1.84 kB
import { Smartenv } from '@push.rocks/smartenv'; /** * Creates a platform-appropriate file watcher based on the current runtime * Uses @push.rocks/smartenv for runtime detection */ export async function createWatcher(options) { const env = new Smartenv(); if (env.isDeno) { // Deno runtime - use Deno.watchFs const { DenoWatcher } = await import('./watcher.deno.js'); return new DenoWatcher(options); } else { // Node.js or Bun - both use fs.watch (Bun has Node.js compatibility) const { NodeWatcher } = await import('./watcher.node.js'); return new NodeWatcher(options); } } /** * Default watcher options */ export const defaultWatcherOptions = { basePaths: [], depth: 4, followSymlinks: false, stabilityThreshold: 300, pollInterval: 100 }; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi90cy93YXRjaGVycy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFLaEQ7OztHQUdHO0FBQ0gsTUFBTSxDQUFDLEtBQUssVUFBVSxhQUFhLENBQUMsT0FBd0I7SUFDMUQsTUFBTSxHQUFHLEdBQUcsSUFBSSxRQUFRLEVBQUUsQ0FBQztJQUUzQixJQUFJLEdBQUcsQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUNmLGtDQUFrQztRQUNsQyxNQUFNLEVBQUUsV0FBVyxFQUFFLEdBQUcsTUFBTSxNQUFNLENBQUMsbUJBQW1CLENBQUMsQ0FBQztRQUMxRCxPQUFPLElBQUksV0FBVyxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ2xDLENBQUM7U0FBTSxDQUFDO1FBQ04scUVBQXFFO1FBQ3JFLE1BQU0sRUFBRSxXQUFXLEVBQUUsR0FBRyxNQUFNLE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO1FBQzFELE9BQU8sSUFBSSxXQUFXLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDbEMsQ0FBQztBQUNILENBQUM7QUFFRDs7R0FFRztBQUNILE1BQU0sQ0FBQyxNQUFNLHFCQUFxQixHQUFvQjtJQUNwRCxTQUFTLEVBQUUsRUFBRTtJQUNiLEtBQUssRUFBRSxDQUFDO0lBQ1IsY0FBYyxFQUFFLEtBQUs7SUFDckIsa0JBQWtCLEVBQUUsR0FBRztJQUN2QixZQUFZLEVBQUUsR0FBRztDQUNsQixDQUFDIn0=