@effectionx/watch 0.3.1 → 0.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/main.d.ts +2 -0
- package/dist/main.d.ts.map +1 -0
- package/{esm → dist}/main.js +6 -7
- package/dist/mod.d.ts +5 -0
- package/dist/mod.d.ts.map +1 -0
- package/{esm → dist}/mod.js +0 -1
- package/dist/package.json +47 -0
- package/dist/stream-helpers.d.ts.map +1 -0
- package/{esm → dist}/stream-helpers.js +1 -3
- package/dist/tsconfig.tsbuildinfo +1 -0
- package/dist/watch.d.ts.map +1 -0
- package/{esm → dist}/watch.js +5 -6
- package/main.ts +83 -0
- package/mod.ts +4 -0
- package/package.json +31 -24
- package/stream-helpers.ts +42 -0
- package/test/cat.ts +17 -0
- package/test/fixtures/src/file.txt +1 -0
- package/test/helpers.ts +144 -0
- package/test/watch-graceful.ts +11 -0
- package/test/watch.test.ts +121 -0
- package/tsconfig.json +27 -0
- package/watch.ts +198 -0
- package/esm/_dnt.polyfills.d.ts +0 -8
- package/esm/_dnt.polyfills.d.ts.map +0 -1
- package/esm/_dnt.polyfills.js +0 -110
- package/esm/_dnt.shims.d.ts +0 -2
- package/esm/_dnt.shims.d.ts.map +0 -1
- package/esm/_dnt.shims.js +0 -57
- package/esm/deno.d.ts +0 -36
- package/esm/deno.d.ts.map +0 -1
- package/esm/deno.js +0 -34
- package/esm/deps/jsr.io/@std/fs/1.0.20/_create_walk_entry.d.ts +0 -13
- package/esm/deps/jsr.io/@std/fs/1.0.20/_create_walk_entry.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/fs/1.0.20/_create_walk_entry.js +0 -33
- package/esm/deps/jsr.io/@std/fs/1.0.20/_get_file_info_type.d.ts +0 -12
- package/esm/deps/jsr.io/@std/fs/1.0.20/_get_file_info_type.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/fs/1.0.20/_get_file_info_type.js +0 -20
- package/esm/deps/jsr.io/@std/fs/1.0.20/_is_same_path.d.ts +0 -10
- package/esm/deps/jsr.io/@std/fs/1.0.20/_is_same_path.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/fs/1.0.20/_is_same_path.js +0 -17
- package/esm/deps/jsr.io/@std/fs/1.0.20/_is_subdir.d.ts +0 -12
- package/esm/deps/jsr.io/@std/fs/1.0.20/_is_subdir.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/fs/1.0.20/_is_subdir.js +0 -25
- package/esm/deps/jsr.io/@std/fs/1.0.20/_to_path_string.d.ts +0 -9
- package/esm/deps/jsr.io/@std/fs/1.0.20/_to_path_string.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/fs/1.0.20/_to_path_string.js +0 -13
- package/esm/deps/jsr.io/@std/fs/1.0.20/copy.d.ts +0 -117
- package/esm/deps/jsr.io/@std/fs/1.0.20/copy.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/fs/1.0.20/copy.js +0 -312
- package/esm/deps/jsr.io/@std/fs/1.0.20/empty_dir.d.ts +0 -48
- package/esm/deps/jsr.io/@std/fs/1.0.20/empty_dir.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/fs/1.0.20/empty_dir.js +0 -86
- package/esm/deps/jsr.io/@std/fs/1.0.20/ensure_dir.d.ts +0 -49
- package/esm/deps/jsr.io/@std/fs/1.0.20/ensure_dir.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/fs/1.0.20/ensure_dir.js +0 -101
- package/esm/deps/jsr.io/@std/fs/1.0.20/ensure_file.d.ts +0 -47
- package/esm/deps/jsr.io/@std/fs/1.0.20/ensure_file.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/fs/1.0.20/ensure_file.js +0 -89
- package/esm/deps/jsr.io/@std/fs/1.0.20/ensure_link.d.ts +0 -49
- package/esm/deps/jsr.io/@std/fs/1.0.20/ensure_link.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/fs/1.0.20/ensure_link.js +0 -60
- package/esm/deps/jsr.io/@std/fs/1.0.20/ensure_symlink.d.ts +0 -70
- package/esm/deps/jsr.io/@std/fs/1.0.20/ensure_symlink.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/fs/1.0.20/ensure_symlink.js +0 -155
- package/esm/deps/jsr.io/@std/fs/1.0.20/eol.d.ts +0 -52
- package/esm/deps/jsr.io/@std/fs/1.0.20/eol.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/fs/1.0.20/eol.js +0 -67
- package/esm/deps/jsr.io/@std/fs/1.0.20/exists.d.ts +0 -219
- package/esm/deps/jsr.io/@std/fs/1.0.20/exists.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/fs/1.0.20/exists.js +0 -269
- package/esm/deps/jsr.io/@std/fs/1.0.20/expand_glob.d.ts +0 -267
- package/esm/deps/jsr.io/@std/fs/1.0.20/expand_glob.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/fs/1.0.20/expand_glob.js +0 -439
- package/esm/deps/jsr.io/@std/fs/1.0.20/mod.d.ts +0 -29
- package/esm/deps/jsr.io/@std/fs/1.0.20/mod.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/fs/1.0.20/mod.js +0 -29
- package/esm/deps/jsr.io/@std/fs/1.0.20/move.d.ts +0 -86
- package/esm/deps/jsr.io/@std/fs/1.0.20/move.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/fs/1.0.20/move.js +0 -141
- package/esm/deps/jsr.io/@std/fs/1.0.20/walk.d.ts +0 -777
- package/esm/deps/jsr.io/@std/fs/1.0.20/walk.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/fs/1.0.20/walk.js +0 -845
- package/esm/deps/jsr.io/@std/internal/1.0.12/_os.d.ts +0 -2
- package/esm/deps/jsr.io/@std/internal/1.0.12/_os.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/internal/1.0.12/_os.js +0 -12
- package/esm/deps/jsr.io/@std/internal/1.0.12/os.d.ts +0 -3
- package/esm/deps/jsr.io/@std/internal/1.0.12/os.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/internal/1.0.12/os.js +0 -5
- package/esm/deps/jsr.io/@std/path/1.1.3/_common/assert_path.d.ts +0 -2
- package/esm/deps/jsr.io/@std/path/1.1.3/_common/assert_path.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/path/1.1.3/_common/assert_path.js +0 -7
- package/esm/deps/jsr.io/@std/path/1.1.3/_common/basename.d.ts +0 -4
- package/esm/deps/jsr.io/@std/path/1.1.3/_common/basename.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/path/1.1.3/_common/basename.js +0 -40
- package/esm/deps/jsr.io/@std/path/1.1.3/_common/common.d.ts +0 -2
- package/esm/deps/jsr.io/@std/path/1.1.3/_common/common.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/path/1.1.3/_common/common.js +0 -23
- package/esm/deps/jsr.io/@std/path/1.1.3/_common/constants.d.ts +0 -40
- package/esm/deps/jsr.io/@std/path/1.1.3/_common/constants.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/path/1.1.3/_common/constants.js +0 -46
- package/esm/deps/jsr.io/@std/path/1.1.3/_common/dirname.d.ts +0 -2
- package/esm/deps/jsr.io/@std/path/1.1.3/_common/dirname.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/path/1.1.3/_common/dirname.js +0 -8
- package/esm/deps/jsr.io/@std/path/1.1.3/_common/format.d.ts +0 -4
- package/esm/deps/jsr.io/@std/path/1.1.3/_common/format.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/path/1.1.3/_common/format.js +0 -19
- package/esm/deps/jsr.io/@std/path/1.1.3/_common/from_file_url.d.ts +0 -2
- package/esm/deps/jsr.io/@std/path/1.1.3/_common/from_file_url.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/path/1.1.3/_common/from_file_url.js +0 -9
- package/esm/deps/jsr.io/@std/path/1.1.3/_common/glob_to_reg_exp.d.ts +0 -35
- package/esm/deps/jsr.io/@std/path/1.1.3/_common/glob_to_reg_exp.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/path/1.1.3/_common/glob_to_reg_exp.js +0 -234
- package/esm/deps/jsr.io/@std/path/1.1.3/_common/normalize.d.ts +0 -2
- package/esm/deps/jsr.io/@std/path/1.1.3/_common/normalize.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/path/1.1.3/_common/normalize.js +0 -8
- package/esm/deps/jsr.io/@std/path/1.1.3/_common/normalize_string.d.ts +0 -2
- package/esm/deps/jsr.io/@std/path/1.1.3/_common/normalize_string.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/path/1.1.3/_common/normalize_string.js +0 -77
- package/esm/deps/jsr.io/@std/path/1.1.3/_common/relative.d.ts +0 -2
- package/esm/deps/jsr.io/@std/path/1.1.3/_common/relative.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/path/1.1.3/_common/relative.js +0 -9
- package/esm/deps/jsr.io/@std/path/1.1.3/_common/strip_trailing_separators.d.ts +0 -2
- package/esm/deps/jsr.io/@std/path/1.1.3/_common/strip_trailing_separators.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/path/1.1.3/_common/strip_trailing_separators.js +0 -19
- package/esm/deps/jsr.io/@std/path/1.1.3/_common/to_file_url.d.ts +0 -2
- package/esm/deps/jsr.io/@std/path/1.1.3/_common/to_file_url.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/path/1.1.3/_common/to_file_url.js +0 -15
- package/esm/deps/jsr.io/@std/path/1.1.3/basename.d.ts +0 -27
- package/esm/deps/jsr.io/@std/path/1.1.3/basename.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/path/1.1.3/basename.js +0 -35
- package/esm/deps/jsr.io/@std/path/1.1.3/common.d.ts +0 -28
- package/esm/deps/jsr.io/@std/path/1.1.3/common.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/path/1.1.3/common.js +0 -33
- package/esm/deps/jsr.io/@std/path/1.1.3/constants.d.ts +0 -15
- package/esm/deps/jsr.io/@std/path/1.1.3/constants.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/path/1.1.3/constants.js +0 -17
- package/esm/deps/jsr.io/@std/path/1.1.3/dirname.d.ts +0 -22
- package/esm/deps/jsr.io/@std/path/1.1.3/dirname.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/path/1.1.3/dirname.js +0 -28
- package/esm/deps/jsr.io/@std/path/1.1.3/extname.d.ts +0 -22
- package/esm/deps/jsr.io/@std/path/1.1.3/extname.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/path/1.1.3/extname.js +0 -28
- package/esm/deps/jsr.io/@std/path/1.1.3/format.d.ts +0 -22
- package/esm/deps/jsr.io/@std/path/1.1.3/format.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/path/1.1.3/format.js +0 -27
- package/esm/deps/jsr.io/@std/path/1.1.3/from_file_url.d.ts +0 -22
- package/esm/deps/jsr.io/@std/path/1.1.3/from_file_url.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/path/1.1.3/from_file_url.js +0 -28
- package/esm/deps/jsr.io/@std/path/1.1.3/glob_to_regexp.d.ts +0 -77
- package/esm/deps/jsr.io/@std/path/1.1.3/glob_to_regexp.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/path/1.1.3/glob_to_regexp.js +0 -83
- package/esm/deps/jsr.io/@std/path/1.1.3/is_absolute.d.ts +0 -22
- package/esm/deps/jsr.io/@std/path/1.1.3/is_absolute.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/path/1.1.3/is_absolute.js +0 -28
- package/esm/deps/jsr.io/@std/path/1.1.3/is_glob.d.ts +0 -17
- package/esm/deps/jsr.io/@std/path/1.1.3/is_glob.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/path/1.1.3/is_glob.js +0 -42
- package/esm/deps/jsr.io/@std/path/1.1.3/join.d.ts +0 -23
- package/esm/deps/jsr.io/@std/path/1.1.3/join.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/path/1.1.3/join.js +0 -29
- package/esm/deps/jsr.io/@std/path/1.1.3/join_globs.d.ts +0 -28
- package/esm/deps/jsr.io/@std/path/1.1.3/join_globs.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/path/1.1.3/join_globs.js +0 -34
- package/esm/deps/jsr.io/@std/path/1.1.3/mod.d.ts +0 -213
- package/esm/deps/jsr.io/@std/path/1.1.3/mod.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/path/1.1.3/mod.js +0 -216
- package/esm/deps/jsr.io/@std/path/1.1.3/normalize.d.ts +0 -26
- package/esm/deps/jsr.io/@std/path/1.1.3/normalize.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/path/1.1.3/normalize.js +0 -32
- package/esm/deps/jsr.io/@std/path/1.1.3/normalize_glob.d.ts +0 -29
- package/esm/deps/jsr.io/@std/path/1.1.3/normalize_glob.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/path/1.1.3/normalize_glob.js +0 -35
- package/esm/deps/jsr.io/@std/path/1.1.3/parse.d.ts +0 -35
- package/esm/deps/jsr.io/@std/path/1.1.3/parse.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/path/1.1.3/parse.js +0 -39
- package/esm/deps/jsr.io/@std/path/1.1.3/posix/_util.d.ts +0 -2
- package/esm/deps/jsr.io/@std/path/1.1.3/posix/_util.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/path/1.1.3/posix/_util.js +0 -8
- package/esm/deps/jsr.io/@std/path/1.1.3/posix/basename.d.ts +0 -39
- package/esm/deps/jsr.io/@std/path/1.1.3/posix/basename.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/path/1.1.3/posix/basename.js +0 -52
- package/esm/deps/jsr.io/@std/path/1.1.3/posix/constants.d.ts +0 -13
- package/esm/deps/jsr.io/@std/path/1.1.3/posix/constants.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/path/1.1.3/posix/constants.js +0 -14
- package/esm/deps/jsr.io/@std/path/1.1.3/posix/dirname.d.ts +0 -30
- package/esm/deps/jsr.io/@std/path/1.1.3/posix/dirname.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/path/1.1.3/posix/dirname.js +0 -64
- package/esm/deps/jsr.io/@std/path/1.1.3/posix/extname.d.ts +0 -37
- package/esm/deps/jsr.io/@std/path/1.1.3/posix/extname.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/path/1.1.3/posix/extname.js +0 -93
- package/esm/deps/jsr.io/@std/path/1.1.3/posix/format.d.ts +0 -24
- package/esm/deps/jsr.io/@std/path/1.1.3/posix/format.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/path/1.1.3/posix/format.js +0 -28
- package/esm/deps/jsr.io/@std/path/1.1.3/posix/from_file_url.d.ts +0 -16
- package/esm/deps/jsr.io/@std/path/1.1.3/posix/from_file_url.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/path/1.1.3/posix/from_file_url.js +0 -21
- package/esm/deps/jsr.io/@std/path/1.1.3/posix/glob_to_regexp.d.ts +0 -72
- package/esm/deps/jsr.io/@std/path/1.1.3/posix/glob_to_regexp.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/path/1.1.3/posix/glob_to_regexp.js +0 -82
- package/esm/deps/jsr.io/@std/path/1.1.3/posix/is_absolute.d.ts +0 -17
- package/esm/deps/jsr.io/@std/path/1.1.3/posix/is_absolute.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/path/1.1.3/posix/is_absolute.js +0 -23
- package/esm/deps/jsr.io/@std/path/1.1.3/posix/join.d.ts +0 -31
- package/esm/deps/jsr.io/@std/path/1.1.3/posix/join.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/path/1.1.3/posix/join.js +0 -45
- package/esm/deps/jsr.io/@std/path/1.1.3/posix/join_globs.d.ts +0 -20
- package/esm/deps/jsr.io/@std/path/1.1.3/posix/join_globs.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/path/1.1.3/posix/join_globs.js +0 -40
- package/esm/deps/jsr.io/@std/path/1.1.3/posix/normalize.d.ts +0 -37
- package/esm/deps/jsr.io/@std/path/1.1.3/posix/normalize.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/path/1.1.3/posix/normalize.js +0 -58
- package/esm/deps/jsr.io/@std/path/1.1.3/posix/normalize_glob.d.ts +0 -20
- package/esm/deps/jsr.io/@std/path/1.1.3/posix/normalize_glob.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/path/1.1.3/posix/normalize_glob.js +0 -32
- package/esm/deps/jsr.io/@std/path/1.1.3/posix/parse.d.ts +0 -25
- package/esm/deps/jsr.io/@std/path/1.1.3/posix/parse.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/path/1.1.3/posix/parse.js +0 -115
- package/esm/deps/jsr.io/@std/path/1.1.3/posix/relative.d.ts +0 -20
- package/esm/deps/jsr.io/@std/path/1.1.3/posix/relative.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/path/1.1.3/posix/relative.js +0 -106
- package/esm/deps/jsr.io/@std/path/1.1.3/posix/resolve.d.ts +0 -17
- package/esm/deps/jsr.io/@std/path/1.1.3/posix/resolve.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/path/1.1.3/posix/resolve.js +0 -59
- package/esm/deps/jsr.io/@std/path/1.1.3/posix/to_file_url.d.ts +0 -17
- package/esm/deps/jsr.io/@std/path/1.1.3/posix/to_file_url.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/path/1.1.3/posix/to_file_url.js +0 -27
- package/esm/deps/jsr.io/@std/path/1.1.3/posix/to_namespaced_path.d.ts +0 -16
- package/esm/deps/jsr.io/@std/path/1.1.3/posix/to_namespaced_path.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/path/1.1.3/posix/to_namespaced_path.js +0 -20
- package/esm/deps/jsr.io/@std/path/1.1.3/relative.d.ts +0 -24
- package/esm/deps/jsr.io/@std/path/1.1.3/relative.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/path/1.1.3/relative.js +0 -30
- package/esm/deps/jsr.io/@std/path/1.1.3/resolve.d.ts +0 -22
- package/esm/deps/jsr.io/@std/path/1.1.3/resolve.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/path/1.1.3/resolve.js +0 -30
- package/esm/deps/jsr.io/@std/path/1.1.3/to_file_url.d.ts +0 -22
- package/esm/deps/jsr.io/@std/path/1.1.3/to_file_url.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/path/1.1.3/to_file_url.js +0 -28
- package/esm/deps/jsr.io/@std/path/1.1.3/to_namespaced_path.d.ts +0 -21
- package/esm/deps/jsr.io/@std/path/1.1.3/to_namespaced_path.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/path/1.1.3/to_namespaced_path.js +0 -29
- package/esm/deps/jsr.io/@std/path/1.1.3/types.d.ts +0 -38
- package/esm/deps/jsr.io/@std/path/1.1.3/types.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/path/1.1.3/types.js +0 -3
- package/esm/deps/jsr.io/@std/path/1.1.3/windows/_util.d.ts +0 -4
- package/esm/deps/jsr.io/@std/path/1.1.3/windows/_util.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/path/1.1.3/windows/_util.js +0 -15
- package/esm/deps/jsr.io/@std/path/1.1.3/windows/basename.d.ts +0 -22
- package/esm/deps/jsr.io/@std/path/1.1.3/windows/basename.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/path/1.1.3/windows/basename.js +0 -47
- package/esm/deps/jsr.io/@std/path/1.1.3/windows/constants.d.ts +0 -13
- package/esm/deps/jsr.io/@std/path/1.1.3/windows/constants.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/path/1.1.3/windows/constants.js +0 -14
- package/esm/deps/jsr.io/@std/path/1.1.3/windows/dirname.d.ts +0 -17
- package/esm/deps/jsr.io/@std/path/1.1.3/windows/dirname.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/path/1.1.3/windows/dirname.js +0 -113
- package/esm/deps/jsr.io/@std/path/1.1.3/windows/extname.d.ts +0 -17
- package/esm/deps/jsr.io/@std/path/1.1.3/windows/extname.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/path/1.1.3/windows/extname.js +0 -82
- package/esm/deps/jsr.io/@std/path/1.1.3/windows/format.d.ts +0 -24
- package/esm/deps/jsr.io/@std/path/1.1.3/windows/format.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/path/1.1.3/windows/format.js +0 -28
- package/esm/deps/jsr.io/@std/path/1.1.3/windows/from_file_url.d.ts +0 -18
- package/esm/deps/jsr.io/@std/path/1.1.3/windows/from_file_url.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/path/1.1.3/windows/from_file_url.js +0 -30
- package/esm/deps/jsr.io/@std/path/1.1.3/windows/glob_to_regexp.d.ts +0 -71
- package/esm/deps/jsr.io/@std/path/1.1.3/windows/glob_to_regexp.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/path/1.1.3/windows/glob_to_regexp.js +0 -82
- package/esm/deps/jsr.io/@std/path/1.1.3/windows/is_absolute.d.ts +0 -17
- package/esm/deps/jsr.io/@std/path/1.1.3/windows/is_absolute.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/path/1.1.3/windows/is_absolute.js +0 -38
- package/esm/deps/jsr.io/@std/path/1.1.3/windows/join.d.ts +0 -18
- package/esm/deps/jsr.io/@std/path/1.1.3/windows/join.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/path/1.1.3/windows/join.js +0 -77
- package/esm/deps/jsr.io/@std/path/1.1.3/windows/join_globs.d.ts +0 -21
- package/esm/deps/jsr.io/@std/path/1.1.3/windows/join_globs.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/path/1.1.3/windows/join_globs.js +0 -41
- package/esm/deps/jsr.io/@std/path/1.1.3/windows/normalize.d.ts +0 -19
- package/esm/deps/jsr.io/@std/path/1.1.3/windows/normalize.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/path/1.1.3/windows/normalize.js +0 -135
- package/esm/deps/jsr.io/@std/path/1.1.3/windows/normalize_glob.d.ts +0 -20
- package/esm/deps/jsr.io/@std/path/1.1.3/windows/normalize_glob.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/path/1.1.3/windows/normalize_glob.js +0 -32
- package/esm/deps/jsr.io/@std/path/1.1.3/windows/parse.d.ts +0 -25
- package/esm/deps/jsr.io/@std/path/1.1.3/windows/parse.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/path/1.1.3/windows/parse.js +0 -176
- package/esm/deps/jsr.io/@std/path/1.1.3/windows/relative.d.ts +0 -23
- package/esm/deps/jsr.io/@std/path/1.1.3/windows/relative.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/path/1.1.3/windows/relative.js +0 -131
- package/esm/deps/jsr.io/@std/path/1.1.3/windows/resolve.d.ts +0 -17
- package/esm/deps/jsr.io/@std/path/1.1.3/windows/resolve.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/path/1.1.3/windows/resolve.js +0 -154
- package/esm/deps/jsr.io/@std/path/1.1.3/windows/to_file_url.d.ts +0 -17
- package/esm/deps/jsr.io/@std/path/1.1.3/windows/to_file_url.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/path/1.1.3/windows/to_file_url.js +0 -34
- package/esm/deps/jsr.io/@std/path/1.1.3/windows/to_namespaced_path.d.ts +0 -17
- package/esm/deps/jsr.io/@std/path/1.1.3/windows/to_namespaced_path.d.ts.map +0 -1
- package/esm/deps/jsr.io/@std/path/1.1.3/windows/to_namespaced_path.js +0 -49
- package/esm/main.d.ts +0 -2
- package/esm/main.d.ts.map +0 -1
- package/esm/mod.d.ts +0 -6
- package/esm/mod.d.ts.map +0 -1
- package/esm/package.json +0 -3
- package/esm/stream-helpers.d.ts.map +0 -1
- package/esm/watch.d.ts.map +0 -1
- package/script/_dnt.polyfills.d.ts +0 -8
- package/script/_dnt.polyfills.d.ts.map +0 -1
- package/script/_dnt.polyfills.js +0 -111
- package/script/_dnt.shims.d.ts +0 -2
- package/script/_dnt.shims.d.ts.map +0 -1
- package/script/_dnt.shims.js +0 -60
- package/script/deno.d.ts +0 -36
- package/script/deno.d.ts.map +0 -1
- package/script/deno.js +0 -36
- package/script/deps/jsr.io/@std/fs/1.0.20/_create_walk_entry.d.ts +0 -13
- package/script/deps/jsr.io/@std/fs/1.0.20/_create_walk_entry.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/fs/1.0.20/_create_walk_entry.js +0 -37
- package/script/deps/jsr.io/@std/fs/1.0.20/_get_file_info_type.d.ts +0 -12
- package/script/deps/jsr.io/@std/fs/1.0.20/_get_file_info_type.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/fs/1.0.20/_get_file_info_type.js +0 -23
- package/script/deps/jsr.io/@std/fs/1.0.20/_is_same_path.d.ts +0 -10
- package/script/deps/jsr.io/@std/fs/1.0.20/_is_same_path.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/fs/1.0.20/_is_same_path.js +0 -20
- package/script/deps/jsr.io/@std/fs/1.0.20/_is_subdir.d.ts +0 -12
- package/script/deps/jsr.io/@std/fs/1.0.20/_is_subdir.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/fs/1.0.20/_is_subdir.js +0 -28
- package/script/deps/jsr.io/@std/fs/1.0.20/_to_path_string.d.ts +0 -9
- package/script/deps/jsr.io/@std/fs/1.0.20/_to_path_string.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/fs/1.0.20/_to_path_string.js +0 -16
- package/script/deps/jsr.io/@std/fs/1.0.20/copy.d.ts +0 -117
- package/script/deps/jsr.io/@std/fs/1.0.20/copy.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/fs/1.0.20/copy.js +0 -316
- package/script/deps/jsr.io/@std/fs/1.0.20/empty_dir.d.ts +0 -48
- package/script/deps/jsr.io/@std/fs/1.0.20/empty_dir.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/fs/1.0.20/empty_dir.js +0 -90
- package/script/deps/jsr.io/@std/fs/1.0.20/ensure_dir.d.ts +0 -49
- package/script/deps/jsr.io/@std/fs/1.0.20/ensure_dir.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/fs/1.0.20/ensure_dir.js +0 -105
- package/script/deps/jsr.io/@std/fs/1.0.20/ensure_file.d.ts +0 -47
- package/script/deps/jsr.io/@std/fs/1.0.20/ensure_file.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/fs/1.0.20/ensure_file.js +0 -93
- package/script/deps/jsr.io/@std/fs/1.0.20/ensure_link.d.ts +0 -49
- package/script/deps/jsr.io/@std/fs/1.0.20/ensure_link.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/fs/1.0.20/ensure_link.js +0 -64
- package/script/deps/jsr.io/@std/fs/1.0.20/ensure_symlink.d.ts +0 -70
- package/script/deps/jsr.io/@std/fs/1.0.20/ensure_symlink.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/fs/1.0.20/ensure_symlink.js +0 -159
- package/script/deps/jsr.io/@std/fs/1.0.20/eol.d.ts +0 -52
- package/script/deps/jsr.io/@std/fs/1.0.20/eol.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/fs/1.0.20/eol.js +0 -105
- package/script/deps/jsr.io/@std/fs/1.0.20/exists.d.ts +0 -219
- package/script/deps/jsr.io/@std/fs/1.0.20/exists.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/fs/1.0.20/exists.js +0 -273
- package/script/deps/jsr.io/@std/fs/1.0.20/expand_glob.d.ts +0 -267
- package/script/deps/jsr.io/@std/fs/1.0.20/expand_glob.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/fs/1.0.20/expand_glob.js +0 -443
- package/script/deps/jsr.io/@std/fs/1.0.20/mod.d.ts +0 -29
- package/script/deps/jsr.io/@std/fs/1.0.20/mod.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/fs/1.0.20/mod.js +0 -45
- package/script/deps/jsr.io/@std/fs/1.0.20/move.d.ts +0 -86
- package/script/deps/jsr.io/@std/fs/1.0.20/move.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/fs/1.0.20/move.js +0 -145
- package/script/deps/jsr.io/@std/fs/1.0.20/walk.d.ts +0 -777
- package/script/deps/jsr.io/@std/fs/1.0.20/walk.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/fs/1.0.20/walk.js +0 -849
- package/script/deps/jsr.io/@std/internal/1.0.12/_os.d.ts +0 -2
- package/script/deps/jsr.io/@std/internal/1.0.12/_os.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/internal/1.0.12/_os.js +0 -48
- package/script/deps/jsr.io/@std/internal/1.0.12/os.d.ts +0 -3
- package/script/deps/jsr.io/@std/internal/1.0.12/os.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/internal/1.0.12/os.js +0 -8
- package/script/deps/jsr.io/@std/path/1.1.3/_common/assert_path.d.ts +0 -2
- package/script/deps/jsr.io/@std/path/1.1.3/_common/assert_path.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/path/1.1.3/_common/assert_path.js +0 -10
- package/script/deps/jsr.io/@std/path/1.1.3/_common/basename.d.ts +0 -4
- package/script/deps/jsr.io/@std/path/1.1.3/_common/basename.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/path/1.1.3/_common/basename.js +0 -45
- package/script/deps/jsr.io/@std/path/1.1.3/_common/common.d.ts +0 -2
- package/script/deps/jsr.io/@std/path/1.1.3/_common/common.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/path/1.1.3/_common/common.js +0 -26
- package/script/deps/jsr.io/@std/path/1.1.3/_common/constants.d.ts +0 -40
- package/script/deps/jsr.io/@std/path/1.1.3/_common/constants.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/path/1.1.3/_common/constants.js +0 -49
- package/script/deps/jsr.io/@std/path/1.1.3/_common/dirname.d.ts +0 -2
- package/script/deps/jsr.io/@std/path/1.1.3/_common/dirname.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/path/1.1.3/_common/dirname.js +0 -11
- package/script/deps/jsr.io/@std/path/1.1.3/_common/format.d.ts +0 -4
- package/script/deps/jsr.io/@std/path/1.1.3/_common/format.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/path/1.1.3/_common/format.js +0 -23
- package/script/deps/jsr.io/@std/path/1.1.3/_common/from_file_url.d.ts +0 -2
- package/script/deps/jsr.io/@std/path/1.1.3/_common/from_file_url.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/path/1.1.3/_common/from_file_url.js +0 -12
- package/script/deps/jsr.io/@std/path/1.1.3/_common/glob_to_reg_exp.d.ts +0 -35
- package/script/deps/jsr.io/@std/path/1.1.3/_common/glob_to_reg_exp.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/path/1.1.3/_common/glob_to_reg_exp.js +0 -237
- package/script/deps/jsr.io/@std/path/1.1.3/_common/normalize.d.ts +0 -2
- package/script/deps/jsr.io/@std/path/1.1.3/_common/normalize.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/path/1.1.3/_common/normalize.js +0 -11
- package/script/deps/jsr.io/@std/path/1.1.3/_common/normalize_string.d.ts +0 -2
- package/script/deps/jsr.io/@std/path/1.1.3/_common/normalize_string.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/path/1.1.3/_common/normalize_string.js +0 -80
- package/script/deps/jsr.io/@std/path/1.1.3/_common/relative.d.ts +0 -2
- package/script/deps/jsr.io/@std/path/1.1.3/_common/relative.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/path/1.1.3/_common/relative.js +0 -12
- package/script/deps/jsr.io/@std/path/1.1.3/_common/strip_trailing_separators.d.ts +0 -2
- package/script/deps/jsr.io/@std/path/1.1.3/_common/strip_trailing_separators.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/path/1.1.3/_common/strip_trailing_separators.js +0 -22
- package/script/deps/jsr.io/@std/path/1.1.3/_common/to_file_url.d.ts +0 -2
- package/script/deps/jsr.io/@std/path/1.1.3/_common/to_file_url.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/path/1.1.3/_common/to_file_url.js +0 -18
- package/script/deps/jsr.io/@std/path/1.1.3/basename.d.ts +0 -27
- package/script/deps/jsr.io/@std/path/1.1.3/basename.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/path/1.1.3/basename.js +0 -38
- package/script/deps/jsr.io/@std/path/1.1.3/common.d.ts +0 -28
- package/script/deps/jsr.io/@std/path/1.1.3/common.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/path/1.1.3/common.js +0 -36
- package/script/deps/jsr.io/@std/path/1.1.3/constants.d.ts +0 -15
- package/script/deps/jsr.io/@std/path/1.1.3/constants.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/path/1.1.3/constants.js +0 -20
- package/script/deps/jsr.io/@std/path/1.1.3/dirname.d.ts +0 -22
- package/script/deps/jsr.io/@std/path/1.1.3/dirname.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/path/1.1.3/dirname.js +0 -31
- package/script/deps/jsr.io/@std/path/1.1.3/extname.d.ts +0 -22
- package/script/deps/jsr.io/@std/path/1.1.3/extname.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/path/1.1.3/extname.js +0 -31
- package/script/deps/jsr.io/@std/path/1.1.3/format.d.ts +0 -22
- package/script/deps/jsr.io/@std/path/1.1.3/format.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/path/1.1.3/format.js +0 -30
- package/script/deps/jsr.io/@std/path/1.1.3/from_file_url.d.ts +0 -22
- package/script/deps/jsr.io/@std/path/1.1.3/from_file_url.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/path/1.1.3/from_file_url.js +0 -31
- package/script/deps/jsr.io/@std/path/1.1.3/glob_to_regexp.d.ts +0 -77
- package/script/deps/jsr.io/@std/path/1.1.3/glob_to_regexp.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/path/1.1.3/glob_to_regexp.js +0 -86
- package/script/deps/jsr.io/@std/path/1.1.3/is_absolute.d.ts +0 -22
- package/script/deps/jsr.io/@std/path/1.1.3/is_absolute.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/path/1.1.3/is_absolute.js +0 -31
- package/script/deps/jsr.io/@std/path/1.1.3/is_glob.d.ts +0 -17
- package/script/deps/jsr.io/@std/path/1.1.3/is_glob.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/path/1.1.3/is_glob.js +0 -45
- package/script/deps/jsr.io/@std/path/1.1.3/join.d.ts +0 -23
- package/script/deps/jsr.io/@std/path/1.1.3/join.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/path/1.1.3/join.js +0 -32
- package/script/deps/jsr.io/@std/path/1.1.3/join_globs.d.ts +0 -28
- package/script/deps/jsr.io/@std/path/1.1.3/join_globs.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/path/1.1.3/join_globs.js +0 -37
- package/script/deps/jsr.io/@std/path/1.1.3/mod.d.ts +0 -213
- package/script/deps/jsr.io/@std/path/1.1.3/mod.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/path/1.1.3/mod.js +0 -232
- package/script/deps/jsr.io/@std/path/1.1.3/normalize.d.ts +0 -26
- package/script/deps/jsr.io/@std/path/1.1.3/normalize.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/path/1.1.3/normalize.js +0 -35
- package/script/deps/jsr.io/@std/path/1.1.3/normalize_glob.d.ts +0 -29
- package/script/deps/jsr.io/@std/path/1.1.3/normalize_glob.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/path/1.1.3/normalize_glob.js +0 -38
- package/script/deps/jsr.io/@std/path/1.1.3/parse.d.ts +0 -35
- package/script/deps/jsr.io/@std/path/1.1.3/parse.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/path/1.1.3/parse.js +0 -42
- package/script/deps/jsr.io/@std/path/1.1.3/posix/_util.d.ts +0 -2
- package/script/deps/jsr.io/@std/path/1.1.3/posix/_util.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/path/1.1.3/posix/_util.js +0 -11
- package/script/deps/jsr.io/@std/path/1.1.3/posix/basename.d.ts +0 -39
- package/script/deps/jsr.io/@std/path/1.1.3/posix/basename.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/path/1.1.3/posix/basename.js +0 -55
- package/script/deps/jsr.io/@std/path/1.1.3/posix/constants.d.ts +0 -13
- package/script/deps/jsr.io/@std/path/1.1.3/posix/constants.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/path/1.1.3/posix/constants.js +0 -17
- package/script/deps/jsr.io/@std/path/1.1.3/posix/dirname.d.ts +0 -30
- package/script/deps/jsr.io/@std/path/1.1.3/posix/dirname.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/path/1.1.3/posix/dirname.js +0 -67
- package/script/deps/jsr.io/@std/path/1.1.3/posix/extname.d.ts +0 -37
- package/script/deps/jsr.io/@std/path/1.1.3/posix/extname.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/path/1.1.3/posix/extname.js +0 -96
- package/script/deps/jsr.io/@std/path/1.1.3/posix/format.d.ts +0 -24
- package/script/deps/jsr.io/@std/path/1.1.3/posix/format.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/path/1.1.3/posix/format.js +0 -31
- package/script/deps/jsr.io/@std/path/1.1.3/posix/from_file_url.d.ts +0 -16
- package/script/deps/jsr.io/@std/path/1.1.3/posix/from_file_url.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/path/1.1.3/posix/from_file_url.js +0 -24
- package/script/deps/jsr.io/@std/path/1.1.3/posix/glob_to_regexp.d.ts +0 -72
- package/script/deps/jsr.io/@std/path/1.1.3/posix/glob_to_regexp.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/path/1.1.3/posix/glob_to_regexp.js +0 -85
- package/script/deps/jsr.io/@std/path/1.1.3/posix/is_absolute.d.ts +0 -17
- package/script/deps/jsr.io/@std/path/1.1.3/posix/is_absolute.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/path/1.1.3/posix/is_absolute.js +0 -26
- package/script/deps/jsr.io/@std/path/1.1.3/posix/join.d.ts +0 -31
- package/script/deps/jsr.io/@std/path/1.1.3/posix/join.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/path/1.1.3/posix/join.js +0 -48
- package/script/deps/jsr.io/@std/path/1.1.3/posix/join_globs.d.ts +0 -20
- package/script/deps/jsr.io/@std/path/1.1.3/posix/join_globs.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/path/1.1.3/posix/join_globs.js +0 -43
- package/script/deps/jsr.io/@std/path/1.1.3/posix/normalize.d.ts +0 -37
- package/script/deps/jsr.io/@std/path/1.1.3/posix/normalize.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/path/1.1.3/posix/normalize.js +0 -61
- package/script/deps/jsr.io/@std/path/1.1.3/posix/normalize_glob.d.ts +0 -20
- package/script/deps/jsr.io/@std/path/1.1.3/posix/normalize_glob.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/path/1.1.3/posix/normalize_glob.js +0 -35
- package/script/deps/jsr.io/@std/path/1.1.3/posix/parse.d.ts +0 -25
- package/script/deps/jsr.io/@std/path/1.1.3/posix/parse.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/path/1.1.3/posix/parse.js +0 -118
- package/script/deps/jsr.io/@std/path/1.1.3/posix/relative.d.ts +0 -20
- package/script/deps/jsr.io/@std/path/1.1.3/posix/relative.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/path/1.1.3/posix/relative.js +0 -109
- package/script/deps/jsr.io/@std/path/1.1.3/posix/resolve.d.ts +0 -17
- package/script/deps/jsr.io/@std/path/1.1.3/posix/resolve.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/path/1.1.3/posix/resolve.js +0 -95
- package/script/deps/jsr.io/@std/path/1.1.3/posix/to_file_url.d.ts +0 -17
- package/script/deps/jsr.io/@std/path/1.1.3/posix/to_file_url.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/path/1.1.3/posix/to_file_url.js +0 -30
- package/script/deps/jsr.io/@std/path/1.1.3/posix/to_namespaced_path.d.ts +0 -16
- package/script/deps/jsr.io/@std/path/1.1.3/posix/to_namespaced_path.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/path/1.1.3/posix/to_namespaced_path.js +0 -23
- package/script/deps/jsr.io/@std/path/1.1.3/relative.d.ts +0 -24
- package/script/deps/jsr.io/@std/path/1.1.3/relative.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/path/1.1.3/relative.js +0 -33
- package/script/deps/jsr.io/@std/path/1.1.3/resolve.d.ts +0 -22
- package/script/deps/jsr.io/@std/path/1.1.3/resolve.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/path/1.1.3/resolve.js +0 -33
- package/script/deps/jsr.io/@std/path/1.1.3/to_file_url.d.ts +0 -22
- package/script/deps/jsr.io/@std/path/1.1.3/to_file_url.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/path/1.1.3/to_file_url.js +0 -31
- package/script/deps/jsr.io/@std/path/1.1.3/to_namespaced_path.d.ts +0 -21
- package/script/deps/jsr.io/@std/path/1.1.3/to_namespaced_path.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/path/1.1.3/to_namespaced_path.js +0 -32
- package/script/deps/jsr.io/@std/path/1.1.3/types.d.ts +0 -38
- package/script/deps/jsr.io/@std/path/1.1.3/types.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/path/1.1.3/types.js +0 -4
- package/script/deps/jsr.io/@std/path/1.1.3/windows/_util.d.ts +0 -4
- package/script/deps/jsr.io/@std/path/1.1.3/windows/_util.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/path/1.1.3/windows/_util.js +0 -20
- package/script/deps/jsr.io/@std/path/1.1.3/windows/basename.d.ts +0 -22
- package/script/deps/jsr.io/@std/path/1.1.3/windows/basename.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/path/1.1.3/windows/basename.js +0 -50
- package/script/deps/jsr.io/@std/path/1.1.3/windows/constants.d.ts +0 -13
- package/script/deps/jsr.io/@std/path/1.1.3/windows/constants.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/path/1.1.3/windows/constants.js +0 -17
- package/script/deps/jsr.io/@std/path/1.1.3/windows/dirname.d.ts +0 -17
- package/script/deps/jsr.io/@std/path/1.1.3/windows/dirname.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/path/1.1.3/windows/dirname.js +0 -116
- package/script/deps/jsr.io/@std/path/1.1.3/windows/extname.d.ts +0 -17
- package/script/deps/jsr.io/@std/path/1.1.3/windows/extname.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/path/1.1.3/windows/extname.js +0 -85
- package/script/deps/jsr.io/@std/path/1.1.3/windows/format.d.ts +0 -24
- package/script/deps/jsr.io/@std/path/1.1.3/windows/format.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/path/1.1.3/windows/format.js +0 -31
- package/script/deps/jsr.io/@std/path/1.1.3/windows/from_file_url.d.ts +0 -18
- package/script/deps/jsr.io/@std/path/1.1.3/windows/from_file_url.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/path/1.1.3/windows/from_file_url.js +0 -33
- package/script/deps/jsr.io/@std/path/1.1.3/windows/glob_to_regexp.d.ts +0 -71
- package/script/deps/jsr.io/@std/path/1.1.3/windows/glob_to_regexp.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/path/1.1.3/windows/glob_to_regexp.js +0 -85
- package/script/deps/jsr.io/@std/path/1.1.3/windows/is_absolute.d.ts +0 -17
- package/script/deps/jsr.io/@std/path/1.1.3/windows/is_absolute.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/path/1.1.3/windows/is_absolute.js +0 -41
- package/script/deps/jsr.io/@std/path/1.1.3/windows/join.d.ts +0 -18
- package/script/deps/jsr.io/@std/path/1.1.3/windows/join.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/path/1.1.3/windows/join.js +0 -80
- package/script/deps/jsr.io/@std/path/1.1.3/windows/join_globs.d.ts +0 -21
- package/script/deps/jsr.io/@std/path/1.1.3/windows/join_globs.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/path/1.1.3/windows/join_globs.js +0 -44
- package/script/deps/jsr.io/@std/path/1.1.3/windows/normalize.d.ts +0 -19
- package/script/deps/jsr.io/@std/path/1.1.3/windows/normalize.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/path/1.1.3/windows/normalize.js +0 -138
- package/script/deps/jsr.io/@std/path/1.1.3/windows/normalize_glob.d.ts +0 -20
- package/script/deps/jsr.io/@std/path/1.1.3/windows/normalize_glob.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/path/1.1.3/windows/normalize_glob.js +0 -35
- package/script/deps/jsr.io/@std/path/1.1.3/windows/parse.d.ts +0 -25
- package/script/deps/jsr.io/@std/path/1.1.3/windows/parse.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/path/1.1.3/windows/parse.js +0 -179
- package/script/deps/jsr.io/@std/path/1.1.3/windows/relative.d.ts +0 -23
- package/script/deps/jsr.io/@std/path/1.1.3/windows/relative.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/path/1.1.3/windows/relative.js +0 -134
- package/script/deps/jsr.io/@std/path/1.1.3/windows/resolve.d.ts +0 -17
- package/script/deps/jsr.io/@std/path/1.1.3/windows/resolve.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/path/1.1.3/windows/resolve.js +0 -190
- package/script/deps/jsr.io/@std/path/1.1.3/windows/to_file_url.d.ts +0 -17
- package/script/deps/jsr.io/@std/path/1.1.3/windows/to_file_url.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/path/1.1.3/windows/to_file_url.js +0 -37
- package/script/deps/jsr.io/@std/path/1.1.3/windows/to_namespaced_path.d.ts +0 -17
- package/script/deps/jsr.io/@std/path/1.1.3/windows/to_namespaced_path.d.ts.map +0 -1
- package/script/deps/jsr.io/@std/path/1.1.3/windows/to_namespaced_path.js +0 -52
- package/script/main.d.ts +0 -2
- package/script/main.d.ts.map +0 -1
- package/script/main.js +0 -76
- package/script/mod.d.ts +0 -6
- package/script/mod.d.ts.map +0 -1
- package/script/mod.js +0 -21
- package/script/package.json +0 -3
- package/script/stream-helpers.d.ts +0 -4
- package/script/stream-helpers.d.ts.map +0 -1
- package/script/stream-helpers.js +0 -42
- package/script/watch.d.ts +0 -76
- package/script/watch.d.ts.map +0 -1
- package/script/watch.js +0 -125
- /package/{esm → dist}/stream-helpers.d.ts +0 -0
- /package/{esm → dist}/watch.d.ts +0 -0
package/test/helpers.ts
ADDED
|
@@ -0,0 +1,144 @@
|
|
|
1
|
+
import type { Process } from "@effectionx/process";
|
|
2
|
+
import { emptyDir, ensureDir } from "@effectionx/fs";
|
|
3
|
+
import { dirname, join } from "node:path";
|
|
4
|
+
import { fileURLToPath } from "node:url";
|
|
5
|
+
import type { Operation, Result, Stream } from "effection";
|
|
6
|
+
import { each, Ok, resource, sleep, spawn, until } from "effection";
|
|
7
|
+
import { cp, readFile, writeFile } from "node:fs/promises";
|
|
8
|
+
import assert from "node:assert";
|
|
9
|
+
|
|
10
|
+
import type { Start } from "../watch.ts";
|
|
11
|
+
|
|
12
|
+
export interface Fixture {
|
|
13
|
+
path: string;
|
|
14
|
+
getPath(filename: "src/file.txt" | "dist/artifact.txt"): string;
|
|
15
|
+
read(name: "src/file.txt"): Operation<string>;
|
|
16
|
+
write(
|
|
17
|
+
filename: "src/file.txt" | "dist/artifact.txt",
|
|
18
|
+
content: string,
|
|
19
|
+
): Operation<void>;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
export function* useFixture(): Operation<Fixture> {
|
|
23
|
+
let tmpDir = fileURLToPath(new URL("./temp", import.meta.url));
|
|
24
|
+
let fixtureDir = fileURLToPath(new URL("./fixtures", import.meta.url));
|
|
25
|
+
// let path = join(tmpDir, "fixtures");
|
|
26
|
+
let path = tmpDir;
|
|
27
|
+
try {
|
|
28
|
+
yield* emptyDir(tmpDir);
|
|
29
|
+
} catch (e) {
|
|
30
|
+
console.log(`Encountered error clearing ${tmpDir}`);
|
|
31
|
+
console.error(e);
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
try {
|
|
35
|
+
yield* until(
|
|
36
|
+
cp(fixtureDir, tmpDir, {
|
|
37
|
+
recursive: true,
|
|
38
|
+
preserveTimestamps: true,
|
|
39
|
+
force: true,
|
|
40
|
+
}),
|
|
41
|
+
);
|
|
42
|
+
} catch (e) {
|
|
43
|
+
console.log(`Encountered error copying from ${fixtureDir} to ${tmpDir}`);
|
|
44
|
+
console.error(e);
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
return {
|
|
48
|
+
path,
|
|
49
|
+
getPath(filename): string {
|
|
50
|
+
return join(path, filename);
|
|
51
|
+
},
|
|
52
|
+
*write(filename: string, content: string) {
|
|
53
|
+
const dest = join(path, filename);
|
|
54
|
+
yield* ensureDir(dirname(dest));
|
|
55
|
+
yield* until(writeFile(join(path, filename), content));
|
|
56
|
+
},
|
|
57
|
+
*read(name) {
|
|
58
|
+
return String(yield* until(readFile(join(path, name))));
|
|
59
|
+
},
|
|
60
|
+
};
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
type SuccessfulStart = {
|
|
64
|
+
stdout: string;
|
|
65
|
+
stderr: string;
|
|
66
|
+
process: Process;
|
|
67
|
+
};
|
|
68
|
+
|
|
69
|
+
type ProcessStart = Result<SuccessfulStart>;
|
|
70
|
+
|
|
71
|
+
interface Inspector {
|
|
72
|
+
starts: ProcessStart[];
|
|
73
|
+
expectNext(): Operation<SuccessfulStart>;
|
|
74
|
+
expectNoRestart(): Operation<void>;
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
export function inspector(stream: Stream<Start, never>): Operation<Inspector> {
|
|
78
|
+
return resource(function* (provide) {
|
|
79
|
+
let starts: ProcessStart[] = [];
|
|
80
|
+
|
|
81
|
+
let expected = 0;
|
|
82
|
+
|
|
83
|
+
yield* spawn(function* () {
|
|
84
|
+
for (let { result } of yield* each(stream)) {
|
|
85
|
+
if (result.ok) {
|
|
86
|
+
let process = result.value;
|
|
87
|
+
let start = {
|
|
88
|
+
stdout: "",
|
|
89
|
+
stderr: "",
|
|
90
|
+
process: result.value,
|
|
91
|
+
};
|
|
92
|
+
starts.push(Ok(start));
|
|
93
|
+
yield* spawn(function* () {
|
|
94
|
+
for (let chunk of yield* each(process.stdout)) {
|
|
95
|
+
start.stdout += String(chunk);
|
|
96
|
+
yield* each.next();
|
|
97
|
+
}
|
|
98
|
+
});
|
|
99
|
+
yield* spawn(function* () {
|
|
100
|
+
for (let chunk of yield* each(process.stderr)) {
|
|
101
|
+
start.stderr += String(chunk);
|
|
102
|
+
yield* each.next();
|
|
103
|
+
}
|
|
104
|
+
});
|
|
105
|
+
} else {
|
|
106
|
+
starts.push(result);
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
yield* each.next();
|
|
110
|
+
}
|
|
111
|
+
});
|
|
112
|
+
|
|
113
|
+
yield* provide({
|
|
114
|
+
starts,
|
|
115
|
+
*expectNext() {
|
|
116
|
+
let initial = expected;
|
|
117
|
+
for (let i = 0; i < 500; i++) {
|
|
118
|
+
if (initial < starts.length) {
|
|
119
|
+
yield* sleep(10);
|
|
120
|
+
expected = starts.length;
|
|
121
|
+
let result = starts[starts.length - 1];
|
|
122
|
+
if (result.ok) {
|
|
123
|
+
return result.value;
|
|
124
|
+
}
|
|
125
|
+
throw new Error(
|
|
126
|
+
`expected successful start, but failed: ${result.error}`,
|
|
127
|
+
);
|
|
128
|
+
}
|
|
129
|
+
yield* sleep(10);
|
|
130
|
+
}
|
|
131
|
+
throw new Error("expecting a sucessful start but it never appeared.");
|
|
132
|
+
},
|
|
133
|
+
*expectNoRestart() {
|
|
134
|
+
let prexisting = starts.length;
|
|
135
|
+
yield* sleep(200);
|
|
136
|
+
let restarts = starts.length - prexisting;
|
|
137
|
+
assert(
|
|
138
|
+
restarts === 0,
|
|
139
|
+
`expected no process restarts to have happened, but instead there were: ${restarts}`,
|
|
140
|
+
);
|
|
141
|
+
},
|
|
142
|
+
});
|
|
143
|
+
});
|
|
144
|
+
}
|
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
import { describe, it } from "@effectionx/bdd";
|
|
2
|
+
import { createArraySignal, is } from "@effectionx/signals";
|
|
3
|
+
import { forEach } from "@effectionx/stream-helpers";
|
|
4
|
+
import { expect } from "expect";
|
|
5
|
+
|
|
6
|
+
import process from "node:process";
|
|
7
|
+
import { spawn } from "effection";
|
|
8
|
+
import { watch } from "../watch.ts";
|
|
9
|
+
import { inspector, useFixture } from "./helpers.ts";
|
|
10
|
+
|
|
11
|
+
describe("watch", () => {
|
|
12
|
+
it("restarts the specified process when files change.", function* () {
|
|
13
|
+
let fixture = yield* useFixture();
|
|
14
|
+
let processes = yield* inspector(
|
|
15
|
+
watch({
|
|
16
|
+
path: fixture.path,
|
|
17
|
+
cmd: "node --experimental-strip-types cat.ts",
|
|
18
|
+
event: "change",
|
|
19
|
+
execOptions: {
|
|
20
|
+
cwd: import.meta.dirname,
|
|
21
|
+
env: {
|
|
22
|
+
PATH: process.env.PATH ?? "",
|
|
23
|
+
},
|
|
24
|
+
arguments: [fixture.getPath("src/file.txt")],
|
|
25
|
+
},
|
|
26
|
+
}),
|
|
27
|
+
);
|
|
28
|
+
|
|
29
|
+
let start = yield* processes.expectNext();
|
|
30
|
+
|
|
31
|
+
yield* start.process.expect();
|
|
32
|
+
|
|
33
|
+
expect(start).toMatchObject({
|
|
34
|
+
stderr: "",
|
|
35
|
+
stdout: "this is a source file",
|
|
36
|
+
});
|
|
37
|
+
|
|
38
|
+
yield* fixture.write("src/file.txt", "this source file is changed");
|
|
39
|
+
|
|
40
|
+
let next = yield* processes.expectNext();
|
|
41
|
+
|
|
42
|
+
yield* next.process.expect();
|
|
43
|
+
|
|
44
|
+
expect(next).toMatchObject({
|
|
45
|
+
stderr: "",
|
|
46
|
+
stdout: "this source file is changed",
|
|
47
|
+
});
|
|
48
|
+
});
|
|
49
|
+
|
|
50
|
+
it("ignores files in .gitignore", function* () {
|
|
51
|
+
expect.assertions(1);
|
|
52
|
+
let fixture = yield* useFixture();
|
|
53
|
+
|
|
54
|
+
let processes = yield* inspector(
|
|
55
|
+
watch({
|
|
56
|
+
path: fixture.path,
|
|
57
|
+
cmd: "echo hello",
|
|
58
|
+
event: "change",
|
|
59
|
+
}),
|
|
60
|
+
);
|
|
61
|
+
|
|
62
|
+
//it starts the first time
|
|
63
|
+
yield* processes.expectNext();
|
|
64
|
+
|
|
65
|
+
yield* fixture.write("dist/artifact.txt", "this file was built again");
|
|
66
|
+
|
|
67
|
+
yield* processes.expectNoRestart();
|
|
68
|
+
|
|
69
|
+
expect(processes.starts).toHaveLength(1);
|
|
70
|
+
});
|
|
71
|
+
|
|
72
|
+
it.skip("ignores files in a .gitignore that is in a parent directory", function* () {
|
|
73
|
+
// start an example in a nested directory than the git ignore
|
|
74
|
+
// touch a change in an ignored file within the directory
|
|
75
|
+
// enuser that there was no restart;
|
|
76
|
+
});
|
|
77
|
+
|
|
78
|
+
it("waits until stdout is closed before restarting", function* () {
|
|
79
|
+
let fixture = yield* useFixture();
|
|
80
|
+
let processes = yield* inspector(
|
|
81
|
+
watch({
|
|
82
|
+
path: fixture.path,
|
|
83
|
+
cmd: "node --experimental-strip-types watch-graceful.ts",
|
|
84
|
+
execOptions: {
|
|
85
|
+
cwd: import.meta.dirname,
|
|
86
|
+
env: {
|
|
87
|
+
PATH: process.env.PATH ?? "",
|
|
88
|
+
},
|
|
89
|
+
},
|
|
90
|
+
}),
|
|
91
|
+
);
|
|
92
|
+
|
|
93
|
+
const output = yield* createArraySignal<string>([]);
|
|
94
|
+
|
|
95
|
+
let first = yield* processes.expectNext();
|
|
96
|
+
|
|
97
|
+
yield* spawn(function* () {
|
|
98
|
+
yield* forEach(function* (line) {
|
|
99
|
+
output.push(`${line}`.trim());
|
|
100
|
+
}, first.process.stdout);
|
|
101
|
+
});
|
|
102
|
+
|
|
103
|
+
yield* is(output, (array) => array.includes("started"));
|
|
104
|
+
|
|
105
|
+
yield* fixture.write("src/file.txt", "hello planet");
|
|
106
|
+
|
|
107
|
+
yield* is(output, (array) => array.includes("done"));
|
|
108
|
+
|
|
109
|
+
yield* processes.expectNext();
|
|
110
|
+
|
|
111
|
+
expect(output.valueOf()).toEqual(["started", "done"]);
|
|
112
|
+
});
|
|
113
|
+
|
|
114
|
+
// start an example that prints "done" to the console upon SIGINT);
|
|
115
|
+
|
|
116
|
+
it.skip("allows for a hard kill ", function* () {
|
|
117
|
+
// start an example that will suspend asked to exit and so will
|
|
118
|
+
// never exit.
|
|
119
|
+
// send the command to exit the watch and the main returns
|
|
120
|
+
});
|
|
121
|
+
});
|
package/tsconfig.json
ADDED
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
{
|
|
2
|
+
"extends": "../tsconfig.json",
|
|
3
|
+
"compilerOptions": {
|
|
4
|
+
"outDir": "dist",
|
|
5
|
+
"rootDir": ".",
|
|
6
|
+
"resolveJsonModule": true
|
|
7
|
+
},
|
|
8
|
+
"include": ["**/*.ts", "package.json"],
|
|
9
|
+
"exclude": ["**/*.test.ts", "test/**", "dist"],
|
|
10
|
+
"references": [
|
|
11
|
+
{
|
|
12
|
+
"path": "../bdd"
|
|
13
|
+
},
|
|
14
|
+
{
|
|
15
|
+
"path": "../fs"
|
|
16
|
+
},
|
|
17
|
+
{
|
|
18
|
+
"path": "../process"
|
|
19
|
+
},
|
|
20
|
+
{
|
|
21
|
+
"path": "../signals"
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
"path": "../stream-helpers"
|
|
25
|
+
}
|
|
26
|
+
]
|
|
27
|
+
}
|
package/watch.ts
ADDED
|
@@ -0,0 +1,198 @@
|
|
|
1
|
+
import { access } from "node:fs/promises";
|
|
2
|
+
import { join, relative } from "node:path";
|
|
3
|
+
import chokidar, { type EmitArgsWithName } from "chokidar";
|
|
4
|
+
import {
|
|
5
|
+
call,
|
|
6
|
+
createChannel,
|
|
7
|
+
createSignal,
|
|
8
|
+
Err,
|
|
9
|
+
Ok,
|
|
10
|
+
type Operation,
|
|
11
|
+
resource,
|
|
12
|
+
type Result,
|
|
13
|
+
spawn,
|
|
14
|
+
type Stream,
|
|
15
|
+
until,
|
|
16
|
+
withResolvers,
|
|
17
|
+
} from "effection";
|
|
18
|
+
import { default as createIgnore } from "ignore";
|
|
19
|
+
import { pipe } from "remeda";
|
|
20
|
+
import { readFile } from "node:fs/promises";
|
|
21
|
+
import { exec, type ExecOptions, type Process } from "@effectionx/process";
|
|
22
|
+
|
|
23
|
+
import { debounce } from "./stream-helpers.ts";
|
|
24
|
+
|
|
25
|
+
// Extended FSWatcher interface that includes EventEmitter methods
|
|
26
|
+
interface FSWatcherWithEvents {
|
|
27
|
+
on(event: string, listener: (...args: EmitArgsWithName) => void): this;
|
|
28
|
+
close(): Promise<void>;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
/**
|
|
32
|
+
* Represents a single start of the specified command
|
|
33
|
+
*/
|
|
34
|
+
export interface Start {
|
|
35
|
+
/**
|
|
36
|
+
* A result containing the {Process} on a successful start, or
|
|
37
|
+
* an error otherwise.
|
|
38
|
+
*/
|
|
39
|
+
result: Result<Process>;
|
|
40
|
+
/**
|
|
41
|
+
* An operation that resolves when the current start begins its
|
|
42
|
+
* shutdown.
|
|
43
|
+
*/
|
|
44
|
+
restarting: Operation<void>;
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
/**
|
|
48
|
+
* A watch is a strema of process starts that happen in reaction
|
|
49
|
+
* to some source file changing on the file system.
|
|
50
|
+
*/
|
|
51
|
+
export interface Watch extends Stream<Result<Process>, never> {}
|
|
52
|
+
|
|
53
|
+
/**
|
|
54
|
+
* Options available to configure what is watched
|
|
55
|
+
*/
|
|
56
|
+
export interface WatchOptions {
|
|
57
|
+
/**
|
|
58
|
+
* The directory to watch
|
|
59
|
+
*/
|
|
60
|
+
path: string;
|
|
61
|
+
/**
|
|
62
|
+
* The command to run (and re-run every time a change is detected)
|
|
63
|
+
*/
|
|
64
|
+
cmd: string;
|
|
65
|
+
|
|
66
|
+
/**
|
|
67
|
+
* @ignore
|
|
68
|
+
*/
|
|
69
|
+
event?: "all" | "change";
|
|
70
|
+
|
|
71
|
+
/**
|
|
72
|
+
* Options passed to process exec
|
|
73
|
+
*/
|
|
74
|
+
execOptions?: ExecOptions;
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
/**
|
|
78
|
+
* Create a watch configuration that observes file system changes and executes a command
|
|
79
|
+
* when changes are detected. The watch can be consumed as a stream of process starts.
|
|
80
|
+
*
|
|
81
|
+
* @example
|
|
82
|
+
* ```ts
|
|
83
|
+
* const watcher = yield* watch({
|
|
84
|
+
* path: './src',
|
|
85
|
+
* cmd: 'npm test'
|
|
86
|
+
* });
|
|
87
|
+
* ```
|
|
88
|
+
*
|
|
89
|
+
* @param options - Configuration options for the watch
|
|
90
|
+
* @param options.path - The directory path to watch for changes
|
|
91
|
+
* @param options.cmd - The command to execute when changes are detected
|
|
92
|
+
* @param options.event - The type of event to watch for ('all' or 'change', defaults to 'all')
|
|
93
|
+
*
|
|
94
|
+
* @returns A Stream that emits `Result<Process>` for each command execution
|
|
95
|
+
*
|
|
96
|
+
* @remarks
|
|
97
|
+
* - Uses chokidar for file system watching
|
|
98
|
+
* - Respects .gitignore patterns if present
|
|
99
|
+
* - Implements debouncing to prevent rapid successive executions
|
|
100
|
+
* - Filters out stale events using the fresh() function
|
|
101
|
+
*
|
|
102
|
+
* @throws Will throw an error if the process execution fails
|
|
103
|
+
*
|
|
104
|
+
* @see {@link WatchOptions} for configuration options
|
|
105
|
+
* @see {@link Process} for process execution details
|
|
106
|
+
*/
|
|
107
|
+
export function watch(options: WatchOptions): Stream<Start, never> {
|
|
108
|
+
return resource(function* (provide) {
|
|
109
|
+
let starts = createChannel<Start, never>();
|
|
110
|
+
let input = createSignal<EmitArgsWithName, never>();
|
|
111
|
+
|
|
112
|
+
let gitignored = yield* findIgnores(options.path);
|
|
113
|
+
|
|
114
|
+
// Cast to extended interface that includes EventEmitter methods
|
|
115
|
+
let watcher = chokidar.watch(options.path, {
|
|
116
|
+
ignored: (path) => {
|
|
117
|
+
let relpath = relative(options.path, path);
|
|
118
|
+
let isGit = relpath === ".git" || relpath.startsWith(".git");
|
|
119
|
+
return isGit || gitignored(path);
|
|
120
|
+
},
|
|
121
|
+
ignoreInitial: true,
|
|
122
|
+
}) as unknown as FSWatcherWithEvents;
|
|
123
|
+
|
|
124
|
+
let { event = "all" } = options;
|
|
125
|
+
watcher.on(event, (...args: EmitArgsWithName) => {
|
|
126
|
+
if (event !== "all") {
|
|
127
|
+
args.unshift(event);
|
|
128
|
+
}
|
|
129
|
+
let [, path] = args;
|
|
130
|
+
if (fresh(500)(args) && !gitignored(path)) {
|
|
131
|
+
input.send(args);
|
|
132
|
+
}
|
|
133
|
+
});
|
|
134
|
+
|
|
135
|
+
let changes = yield* pipe(input, debounce(100));
|
|
136
|
+
let subscription = yield* starts;
|
|
137
|
+
|
|
138
|
+
yield* spawn(function* () {
|
|
139
|
+
while (true) {
|
|
140
|
+
let task = yield* spawn(function* () {
|
|
141
|
+
let restarting = withResolvers<void>();
|
|
142
|
+
try {
|
|
143
|
+
let process = yield* exec(options.cmd, options.execOptions);
|
|
144
|
+
yield* starts.send({
|
|
145
|
+
result: Ok(process),
|
|
146
|
+
restarting: restarting.operation,
|
|
147
|
+
});
|
|
148
|
+
} catch (error) {
|
|
149
|
+
yield* starts.send({
|
|
150
|
+
result: Err(error as Error),
|
|
151
|
+
restarting: restarting.operation,
|
|
152
|
+
});
|
|
153
|
+
}
|
|
154
|
+
yield* changes.next();
|
|
155
|
+
restarting.resolve();
|
|
156
|
+
});
|
|
157
|
+
yield* task;
|
|
158
|
+
}
|
|
159
|
+
});
|
|
160
|
+
|
|
161
|
+
try {
|
|
162
|
+
yield* provide(subscription);
|
|
163
|
+
} finally {
|
|
164
|
+
yield* until(watcher.close());
|
|
165
|
+
}
|
|
166
|
+
});
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
/**
|
|
170
|
+
* locate a `.gitignore` file if it exists and use it to filter
|
|
171
|
+
* out any change events against paths that are matched by it
|
|
172
|
+
*/
|
|
173
|
+
function* findIgnores(path: string): Operation<(path: string) => boolean> {
|
|
174
|
+
let gitignore = join(path, ".gitignore");
|
|
175
|
+
if (
|
|
176
|
+
yield* call(() =>
|
|
177
|
+
access(gitignore).then(
|
|
178
|
+
() => true,
|
|
179
|
+
() => false,
|
|
180
|
+
),
|
|
181
|
+
)
|
|
182
|
+
) {
|
|
183
|
+
let ignores = createIgnore();
|
|
184
|
+
let buffer = yield* call(() => readFile(gitignore));
|
|
185
|
+
ignores.add(buffer.toString());
|
|
186
|
+
return (pathname) => {
|
|
187
|
+
let relativePathname = relative(path, pathname).trim();
|
|
188
|
+
return relativePathname !== "" && ignores.ignores(relativePathname);
|
|
189
|
+
};
|
|
190
|
+
}
|
|
191
|
+
return () => false;
|
|
192
|
+
}
|
|
193
|
+
|
|
194
|
+
function fresh(staletime: number): (args: EmitArgsWithName) => boolean {
|
|
195
|
+
return ([, , stats]) => {
|
|
196
|
+
return !stats || Date.now() - stats.mtimeMs < staletime;
|
|
197
|
+
};
|
|
198
|
+
}
|
package/esm/_dnt.polyfills.d.ts
DELETED
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
declare global {
|
|
2
|
-
interface ArrayConstructor {
|
|
3
|
-
fromAsync<T>(iterableOrArrayLike: AsyncIterable<T> | Iterable<T | Promise<T>> | ArrayLike<T | Promise<T>>): Promise<T[]>;
|
|
4
|
-
fromAsync<T, U>(iterableOrArrayLike: AsyncIterable<T> | Iterable<T> | ArrayLike<T>, mapFn: (value: Awaited<T>) => U, thisArg?: any): Promise<Awaited<U>[]>;
|
|
5
|
-
}
|
|
6
|
-
}
|
|
7
|
-
export {};
|
|
8
|
-
//# sourceMappingURL=_dnt.polyfills.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"_dnt.polyfills.d.ts","sourceRoot":"","sources":["../src/_dnt.polyfills.ts"],"names":[],"mappings":"AACA,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,gBAAgB;QACxB,SAAS,CAAC,CAAC,EACP,mBAAmB,EAAE,aAAa,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,GAC7F,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC;QAEhB,SAAS,CAAC,CAAC,EAAE,CAAC,EACV,mBAAmB,EAAE,aAAa,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,EAClE,KAAK,EAAE,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,EAC/B,OAAO,CAAC,EAAE,GAAG,GACd,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;KAC1B;CACF;AAoID,OAAO,EAAE,CAAC"}
|
package/esm/_dnt.polyfills.js
DELETED
|
@@ -1,110 +0,0 @@
|
|
|
1
|
-
// From https://github.com/es-shims/array-from-async/blob/4a5ff83947b861f35b380d5d4f20da2f07698638/index.mjs
|
|
2
|
-
// Tried to have dnt depend on the package instead, but it distributes as an
|
|
3
|
-
// ES module, so doesn't work with CommonJS.
|
|
4
|
-
//
|
|
5
|
-
// Code below:
|
|
6
|
-
//
|
|
7
|
-
// Copyright 2021 J. S. Choi
|
|
8
|
-
//
|
|
9
|
-
// Redistribution and use in source and binary forms, with or without
|
|
10
|
-
// modification, are permitted provided that the following conditions
|
|
11
|
-
// are met:
|
|
12
|
-
//
|
|
13
|
-
// 1. Redistributions of source code must retain the above copyright
|
|
14
|
-
// notice, this list of conditions and the following disclaimer.
|
|
15
|
-
//
|
|
16
|
-
// 2. Redistributions in binary form must reproduce the above copyright
|
|
17
|
-
// notice, this list of conditions and the following disclaimer in the
|
|
18
|
-
// documentation and/or other materials provided with the distribution.
|
|
19
|
-
//
|
|
20
|
-
// 3. Neither the name of the copyright holder nor the names of its
|
|
21
|
-
// contributors may be used to endorse or promote products derived from
|
|
22
|
-
// this software without specific prior written permission.
|
|
23
|
-
//
|
|
24
|
-
// **This software is provided by the copyright holders and contributors
|
|
25
|
-
// "as is" and any express or implied warranties, including, but not
|
|
26
|
-
// limited to, the implied warranties of merchantability and fitness for a
|
|
27
|
-
// particular purpose are disclaimed. In no event shall the copyright
|
|
28
|
-
// holder or contributors be liable for any direct, indirect, incidental,
|
|
29
|
-
// special, exemplary, or consequential damages (including, but not limited
|
|
30
|
-
// to, procurement of substitute goods or services; loss of use, data, or
|
|
31
|
-
// profits; or business interruption) however caused and on any theory of
|
|
32
|
-
// liability, whether in contract, strict liability, or tort (including
|
|
33
|
-
// negligence or otherwise) arising in any way out of the use of this
|
|
34
|
-
// software, even if advised of the possibility of such damage.**
|
|
35
|
-
const { MAX_SAFE_INTEGER } = Number;
|
|
36
|
-
const iteratorSymbol = Symbol.iterator;
|
|
37
|
-
const asyncIteratorSymbol = Symbol.asyncIterator;
|
|
38
|
-
const IntrinsicArray = Array;
|
|
39
|
-
const tooLongErrorMessage = 'Input is too long and exceeded Number.MAX_SAFE_INTEGER times.';
|
|
40
|
-
function isConstructor(obj) {
|
|
41
|
-
if (obj != null) {
|
|
42
|
-
const prox = new Proxy(obj, {
|
|
43
|
-
construct() {
|
|
44
|
-
return prox;
|
|
45
|
-
},
|
|
46
|
-
});
|
|
47
|
-
try {
|
|
48
|
-
new prox;
|
|
49
|
-
return true;
|
|
50
|
-
}
|
|
51
|
-
catch (err) {
|
|
52
|
-
return false;
|
|
53
|
-
}
|
|
54
|
-
}
|
|
55
|
-
else {
|
|
56
|
-
return false;
|
|
57
|
-
}
|
|
58
|
-
}
|
|
59
|
-
async function fromAsync(items, mapfn, thisArg) {
|
|
60
|
-
const itemsAreIterable = (asyncIteratorSymbol in items ||
|
|
61
|
-
iteratorSymbol in items);
|
|
62
|
-
if (itemsAreIterable) {
|
|
63
|
-
const result = isConstructor(this)
|
|
64
|
-
? new this
|
|
65
|
-
: IntrinsicArray(0);
|
|
66
|
-
let i = 0;
|
|
67
|
-
for await (const v of items) {
|
|
68
|
-
if (i > MAX_SAFE_INTEGER) {
|
|
69
|
-
throw TypeError(tooLongErrorMessage);
|
|
70
|
-
}
|
|
71
|
-
else if (mapfn) {
|
|
72
|
-
result[i] = await mapfn.call(thisArg, v, i);
|
|
73
|
-
}
|
|
74
|
-
else {
|
|
75
|
-
result[i] = v;
|
|
76
|
-
}
|
|
77
|
-
i++;
|
|
78
|
-
}
|
|
79
|
-
result.length = i;
|
|
80
|
-
return result;
|
|
81
|
-
}
|
|
82
|
-
else {
|
|
83
|
-
// In this case, the items are assumed to be an arraylike object with
|
|
84
|
-
// a length property and integer properties for each element.
|
|
85
|
-
const { length } = items;
|
|
86
|
-
const result = isConstructor(this)
|
|
87
|
-
? new this(length)
|
|
88
|
-
: IntrinsicArray(length);
|
|
89
|
-
let i = 0;
|
|
90
|
-
while (i < length) {
|
|
91
|
-
if (i > MAX_SAFE_INTEGER) {
|
|
92
|
-
throw TypeError(tooLongErrorMessage);
|
|
93
|
-
}
|
|
94
|
-
const v = await items[i];
|
|
95
|
-
if (mapfn) {
|
|
96
|
-
result[i] = await mapfn.call(thisArg, v, i);
|
|
97
|
-
}
|
|
98
|
-
else {
|
|
99
|
-
result[i] = v;
|
|
100
|
-
}
|
|
101
|
-
i++;
|
|
102
|
-
}
|
|
103
|
-
result.length = i;
|
|
104
|
-
return result;
|
|
105
|
-
}
|
|
106
|
-
}
|
|
107
|
-
if (!Array.fromAsync) {
|
|
108
|
-
Array.fromAsync = fromAsync;
|
|
109
|
-
}
|
|
110
|
-
export {};
|
package/esm/_dnt.shims.d.ts
DELETED
package/esm/_dnt.shims.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"_dnt.shims.d.ts","sourceRoot":"","sources":["../src/_dnt.shims.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,aAAa,gCAA2C,CAAC"}
|
package/esm/_dnt.shims.js
DELETED
|
@@ -1,57 +0,0 @@
|
|
|
1
|
-
const dntGlobals = {};
|
|
2
|
-
export const dntGlobalThis = createMergeProxy(globalThis, dntGlobals);
|
|
3
|
-
function createMergeProxy(baseObj, extObj) {
|
|
4
|
-
return new Proxy(baseObj, {
|
|
5
|
-
get(_target, prop, _receiver) {
|
|
6
|
-
if (prop in extObj) {
|
|
7
|
-
return extObj[prop];
|
|
8
|
-
}
|
|
9
|
-
else {
|
|
10
|
-
return baseObj[prop];
|
|
11
|
-
}
|
|
12
|
-
},
|
|
13
|
-
set(_target, prop, value) {
|
|
14
|
-
if (prop in extObj) {
|
|
15
|
-
delete extObj[prop];
|
|
16
|
-
}
|
|
17
|
-
baseObj[prop] = value;
|
|
18
|
-
return true;
|
|
19
|
-
},
|
|
20
|
-
deleteProperty(_target, prop) {
|
|
21
|
-
let success = false;
|
|
22
|
-
if (prop in extObj) {
|
|
23
|
-
delete extObj[prop];
|
|
24
|
-
success = true;
|
|
25
|
-
}
|
|
26
|
-
if (prop in baseObj) {
|
|
27
|
-
delete baseObj[prop];
|
|
28
|
-
success = true;
|
|
29
|
-
}
|
|
30
|
-
return success;
|
|
31
|
-
},
|
|
32
|
-
ownKeys(_target) {
|
|
33
|
-
const baseKeys = Reflect.ownKeys(baseObj);
|
|
34
|
-
const extKeys = Reflect.ownKeys(extObj);
|
|
35
|
-
const extKeysSet = new Set(extKeys);
|
|
36
|
-
return [...baseKeys.filter((k) => !extKeysSet.has(k)), ...extKeys];
|
|
37
|
-
},
|
|
38
|
-
defineProperty(_target, prop, desc) {
|
|
39
|
-
if (prop in extObj) {
|
|
40
|
-
delete extObj[prop];
|
|
41
|
-
}
|
|
42
|
-
Reflect.defineProperty(baseObj, prop, desc);
|
|
43
|
-
return true;
|
|
44
|
-
},
|
|
45
|
-
getOwnPropertyDescriptor(_target, prop) {
|
|
46
|
-
if (prop in extObj) {
|
|
47
|
-
return Reflect.getOwnPropertyDescriptor(extObj, prop);
|
|
48
|
-
}
|
|
49
|
-
else {
|
|
50
|
-
return Reflect.getOwnPropertyDescriptor(baseObj, prop);
|
|
51
|
-
}
|
|
52
|
-
},
|
|
53
|
-
has(_target, prop) {
|
|
54
|
-
return prop in extObj || prop in baseObj;
|
|
55
|
-
},
|
|
56
|
-
});
|
|
57
|
-
}
|