cline 1.0.1 → 1.0.2

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.
Files changed (299) hide show
  1. package/bin/cline +0 -0
  2. package/bin/cline-darwin-amd64 +0 -0
  3. package/bin/cline-darwin-arm64 +0 -0
  4. package/bin/cline-host +0 -0
  5. package/bin/cline-host-darwin-amd64 +0 -0
  6. package/bin/cline-host-darwin-arm64 +0 -0
  7. package/bin/cline-host-linux-amd64 +0 -0
  8. package/bin/cline-host-linux-arm64 +0 -0
  9. package/bin/cline-linux-amd64 +0 -0
  10. package/bin/cline-linux-arm64 +0 -0
  11. package/cline-core.js +24143 -16610
  12. package/extension/package.json +12 -4
  13. package/node_modules/b4a/LICENSE +201 -0
  14. package/node_modules/b4a/README.md +153 -0
  15. package/node_modules/b4a/browser.js +563 -0
  16. package/node_modules/b4a/index.js +188 -0
  17. package/node_modules/b4a/lib/ascii.js +31 -0
  18. package/node_modules/b4a/lib/base64.js +65 -0
  19. package/node_modules/b4a/lib/hex.js +51 -0
  20. package/node_modules/b4a/lib/utf16le.js +40 -0
  21. package/node_modules/b4a/lib/utf8.js +141 -0
  22. package/node_modules/b4a/package.json +49 -0
  23. package/node_modules/b4a/react-native.js +5 -0
  24. package/node_modules/bare-events/LICENSE +201 -0
  25. package/node_modules/bare-events/README.md +25 -0
  26. package/node_modules/bare-events/global.d.ts +15 -0
  27. package/node_modules/bare-events/global.js +5 -0
  28. package/node_modules/bare-events/index.d.ts +94 -0
  29. package/node_modules/bare-events/index.js +355 -0
  30. package/node_modules/bare-events/lib/errors.js +32 -0
  31. package/node_modules/bare-events/package.json +61 -0
  32. package/node_modules/bare-events/web.d.ts +79 -0
  33. package/node_modules/bare-events/web.js +347 -0
  34. package/node_modules/bare-fs/CMakeLists.txt +13 -0
  35. package/node_modules/bare-fs/LICENSE +201 -0
  36. package/node_modules/bare-fs/README.md +29 -0
  37. package/node_modules/bare-fs/binding.c +2238 -0
  38. package/node_modules/bare-fs/binding.js +1 -0
  39. package/node_modules/bare-fs/index.d.ts +1115 -0
  40. package/node_modules/bare-fs/index.js +2330 -0
  41. package/node_modules/bare-fs/lib/constants.d.ts +49 -0
  42. package/node_modules/bare-fs/lib/constants.js +49 -0
  43. package/node_modules/bare-fs/lib/errors.d.ts +11 -0
  44. package/node_modules/bare-fs/lib/errors.js +55 -0
  45. package/node_modules/bare-fs/package.json +71 -0
  46. package/node_modules/bare-fs/prebuilds/android-arm/bare-fs.bare +0 -0
  47. package/node_modules/bare-fs/prebuilds/android-arm64/bare-fs.bare +0 -0
  48. package/node_modules/bare-fs/prebuilds/android-ia32/bare-fs.bare +0 -0
  49. package/node_modules/bare-fs/prebuilds/android-x64/bare-fs.bare +0 -0
  50. package/node_modules/bare-fs/prebuilds/darwin-arm64/bare-fs.bare +0 -0
  51. package/node_modules/bare-fs/prebuilds/darwin-x64/bare-fs.bare +0 -0
  52. package/node_modules/bare-fs/prebuilds/ios-arm64/bare-fs.bare +0 -0
  53. package/node_modules/bare-fs/prebuilds/ios-arm64-simulator/bare-fs.bare +0 -0
  54. package/node_modules/bare-fs/prebuilds/ios-x64-simulator/bare-fs.bare +0 -0
  55. package/node_modules/bare-fs/prebuilds/linux-arm64/bare-fs.bare +0 -0
  56. package/node_modules/bare-fs/prebuilds/linux-x64/bare-fs.bare +0 -0
  57. package/node_modules/bare-fs/prebuilds/win32-arm64/bare-fs.bare +0 -0
  58. package/node_modules/bare-fs/prebuilds/win32-x64/bare-fs.bare +0 -0
  59. package/node_modules/bare-fs/promises.d.ts +282 -0
  60. package/node_modules/bare-fs/promises.js +90 -0
  61. package/node_modules/bare-os/CMakeLists.txt +13 -0
  62. package/node_modules/bare-os/LICENSE +201 -0
  63. package/node_modules/bare-os/README.md +11 -0
  64. package/node_modules/bare-os/binding.c +1119 -0
  65. package/node_modules/bare-os/binding.js +1 -0
  66. package/node_modules/bare-os/index.d.ts +109 -0
  67. package/node_modules/bare-os/index.js +99 -0
  68. package/node_modules/bare-os/lib/constants.js +6 -0
  69. package/node_modules/bare-os/lib/errors.js +22 -0
  70. package/node_modules/bare-os/package.json +46 -0
  71. package/node_modules/bare-os/prebuilds/android-arm/bare-os.bare +0 -0
  72. package/node_modules/bare-os/prebuilds/android-arm64/bare-os.bare +0 -0
  73. package/node_modules/bare-os/prebuilds/android-ia32/bare-os.bare +0 -0
  74. package/node_modules/bare-os/prebuilds/android-x64/bare-os.bare +0 -0
  75. package/node_modules/bare-os/prebuilds/darwin-arm64/bare-os.bare +0 -0
  76. package/node_modules/bare-os/prebuilds/darwin-x64/bare-os.bare +0 -0
  77. package/node_modules/bare-os/prebuilds/ios-arm64/bare-os.bare +0 -0
  78. package/node_modules/bare-os/prebuilds/ios-arm64-simulator/bare-os.bare +0 -0
  79. package/node_modules/bare-os/prebuilds/ios-x64-simulator/bare-os.bare +0 -0
  80. package/node_modules/bare-os/prebuilds/linux-arm64/bare-os.bare +0 -0
  81. package/node_modules/bare-os/prebuilds/linux-x64/bare-os.bare +0 -0
  82. package/node_modules/bare-os/prebuilds/win32-arm64/bare-os.bare +0 -0
  83. package/node_modules/bare-os/prebuilds/win32-x64/bare-os.bare +0 -0
  84. package/node_modules/bare-path/LICENSE +201 -0
  85. package/node_modules/bare-path/NOTICE +28 -0
  86. package/node_modules/bare-path/README.md +19 -0
  87. package/node_modules/bare-path/index.js +11 -0
  88. package/node_modules/bare-path/lib/constants.js +11 -0
  89. package/node_modules/bare-path/lib/posix.js +242 -0
  90. package/node_modules/bare-path/lib/shared.js +67 -0
  91. package/node_modules/bare-path/lib/win32.js +513 -0
  92. package/node_modules/bare-path/package.json +36 -0
  93. package/node_modules/bare-stream/LICENSE +201 -0
  94. package/node_modules/bare-stream/README.md +15 -0
  95. package/node_modules/bare-stream/global.js +8 -0
  96. package/node_modules/bare-stream/index.d.ts +237 -0
  97. package/node_modules/bare-stream/index.js +355 -0
  98. package/node_modules/bare-stream/package.json +61 -0
  99. package/node_modules/bare-stream/promises.js +3 -0
  100. package/node_modules/bare-stream/web.d.ts +73 -0
  101. package/node_modules/bare-stream/web.js +229 -0
  102. package/node_modules/bare-url/CMakeLists.txt +27 -0
  103. package/node_modules/bare-url/LICENSE +201 -0
  104. package/node_modules/bare-url/README.md +19 -0
  105. package/node_modules/bare-url/binding.c +188 -0
  106. package/node_modules/bare-url/binding.js +1 -0
  107. package/node_modules/bare-url/global.d.ts +12 -0
  108. package/node_modules/bare-url/global.js +2 -0
  109. package/node_modules/bare-url/index.d.ts +39 -0
  110. package/node_modules/bare-url/index.js +450 -0
  111. package/node_modules/bare-url/lib/errors.d.ts +8 -0
  112. package/node_modules/bare-url/lib/errors.js +38 -0
  113. package/node_modules/bare-url/lib/url-search-params.d.ts +21 -0
  114. package/node_modules/bare-url/lib/url-search-params.js +176 -0
  115. package/node_modules/bare-url/package.json +51 -0
  116. package/node_modules/bare-url/prebuilds/android-arm/bare-url.bare +0 -0
  117. package/node_modules/bare-url/prebuilds/android-arm64/bare-url.bare +0 -0
  118. package/node_modules/bare-url/prebuilds/android-ia32/bare-url.bare +0 -0
  119. package/node_modules/bare-url/prebuilds/android-x64/bare-url.bare +0 -0
  120. package/node_modules/bare-url/prebuilds/darwin-arm64/bare-url.bare +0 -0
  121. package/node_modules/bare-url/prebuilds/darwin-x64/bare-url.bare +0 -0
  122. package/node_modules/bare-url/prebuilds/ios-arm64/bare-url.bare +0 -0
  123. package/node_modules/bare-url/prebuilds/ios-arm64-simulator/bare-url.bare +0 -0
  124. package/node_modules/bare-url/prebuilds/ios-x64-simulator/bare-url.bare +0 -0
  125. package/node_modules/bare-url/prebuilds/linux-arm64/bare-url.bare +0 -0
  126. package/node_modules/bare-url/prebuilds/linux-x64/bare-url.bare +0 -0
  127. package/node_modules/bare-url/prebuilds/win32-arm64/bare-url.bare +0 -0
  128. package/node_modules/bare-url/prebuilds/win32-x64/bare-url.bare +0 -0
  129. package/node_modules/better-sqlite3/deps/download.sh +1 -1
  130. package/node_modules/better-sqlite3/deps/sqlite3/sqlite3.c +122 -81
  131. package/node_modules/better-sqlite3/deps/sqlite3/sqlite3.h +45 -45
  132. package/node_modules/better-sqlite3/lib/database.js +1 -1
  133. package/node_modules/better-sqlite3/package.json +4 -7
  134. package/node_modules/better-sqlite3/src/addon.cpp +47 -0
  135. package/node_modules/better-sqlite3/src/better_sqlite3.cpp +44 -2164
  136. package/node_modules/better-sqlite3/src/objects/backup.cpp +120 -0
  137. package/node_modules/better-sqlite3/src/objects/backup.hpp +36 -0
  138. package/node_modules/better-sqlite3/src/objects/database.cpp +417 -0
  139. package/node_modules/better-sqlite3/src/objects/database.hpp +103 -0
  140. package/node_modules/better-sqlite3/src/objects/statement-iterator.cpp +113 -0
  141. package/node_modules/better-sqlite3/src/objects/statement-iterator.hpp +50 -0
  142. package/node_modules/better-sqlite3/src/objects/statement.cpp +383 -0
  143. package/node_modules/better-sqlite3/src/objects/statement.hpp +58 -0
  144. package/node_modules/better-sqlite3/src/util/bind-map.cpp +73 -0
  145. package/node_modules/better-sqlite3/src/util/binder.cpp +193 -0
  146. package/node_modules/better-sqlite3/src/util/constants.cpp +172 -0
  147. package/node_modules/better-sqlite3/src/util/custom-aggregate.cpp +121 -0
  148. package/node_modules/better-sqlite3/src/util/custom-function.cpp +59 -0
  149. package/node_modules/better-sqlite3/src/util/custom-table.cpp +409 -0
  150. package/node_modules/better-sqlite3/src/util/data-converter.cpp +17 -0
  151. package/node_modules/better-sqlite3/src/util/data.cpp +194 -0
  152. package/node_modules/better-sqlite3/src/util/helpers.cpp +109 -0
  153. package/node_modules/better-sqlite3/src/util/macros.cpp +63 -0
  154. package/node_modules/better-sqlite3/src/util/query-macros.cpp +71 -0
  155. package/node_modules/better-sqlite3/src/util/row-builder.cpp +49 -0
  156. package/node_modules/events-universal/LICENSE +201 -0
  157. package/node_modules/events-universal/README.md +17 -0
  158. package/node_modules/events-universal/bare.js +1 -0
  159. package/node_modules/events-universal/default.js +1 -0
  160. package/node_modules/events-universal/index.js +1 -0
  161. package/node_modules/events-universal/package.json +39 -0
  162. package/node_modules/events-universal/react-native.js +1 -0
  163. package/node_modules/{fs-constants → fast-fifo}/LICENSE +1 -1
  164. package/node_modules/fast-fifo/README.md +78 -0
  165. package/node_modules/fast-fifo/fixed-size.js +39 -0
  166. package/node_modules/fast-fifo/index.js +48 -0
  167. package/node_modules/fast-fifo/package.json +28 -0
  168. package/node_modules/{base64-js → streamx}/LICENSE +1 -1
  169. package/node_modules/streamx/README.md +489 -0
  170. package/node_modules/streamx/index.js +1184 -0
  171. package/node_modules/streamx/package.json +34 -0
  172. package/node_modules/tar-fs/README.md +23 -34
  173. package/node_modules/tar-fs/index.js +211 -184
  174. package/node_modules/tar-fs/package.json +27 -7
  175. package/node_modules/tar-stream/README.md +34 -19
  176. package/node_modules/tar-stream/constants.js +14 -0
  177. package/node_modules/tar-stream/extract.js +341 -192
  178. package/node_modules/tar-stream/headers.js +201 -175
  179. package/node_modules/tar-stream/pack.js +226 -194
  180. package/node_modules/tar-stream/package.json +23 -46
  181. package/node_modules/text-decoder/LICENSE +201 -0
  182. package/node_modules/text-decoder/README.md +36 -0
  183. package/node_modules/text-decoder/index.js +64 -0
  184. package/node_modules/text-decoder/lib/browser-decoder.js +17 -0
  185. package/node_modules/text-decoder/lib/pass-through-decoder.js +19 -0
  186. package/node_modules/text-decoder/lib/utf8-decoder.js +104 -0
  187. package/node_modules/text-decoder/package.json +38 -0
  188. package/package.json +1 -1
  189. package/proto/cline/account.proto +10 -8
  190. package/proto/cline/browser.proto +3 -1
  191. package/proto/cline/checkpoints.proto +5 -3
  192. package/proto/cline/commands.proto +4 -2
  193. package/proto/cline/common.proto +5 -7
  194. package/proto/cline/dictation.proto +3 -1
  195. package/proto/cline/file.proto +36 -34
  196. package/proto/cline/hooks.proto +3 -2
  197. package/proto/cline/mcp.proto +6 -4
  198. package/proto/cline/models.proto +189 -19
  199. package/proto/cline/oca_account.proto +6 -7
  200. package/proto/cline/slash.proto +3 -1
  201. package/proto/cline/state.proto +144 -292
  202. package/proto/cline/task.proto +4 -2
  203. package/proto/cline/ui.proto +25 -24
  204. package/proto/cline/web.proto +3 -1
  205. package/proto/descriptor_set.pb +0 -0
  206. package/proto/host/diff.proto +5 -4
  207. package/proto/host/env.proto +8 -7
  208. package/proto/host/testing.proto +3 -3
  209. package/proto/host/window.proto +2 -2
  210. package/proto/host/workspace.proto +13 -12
  211. package/node_modules/base64-js/README.md +0 -34
  212. package/node_modules/base64-js/base64js.min.js +0 -1
  213. package/node_modules/base64-js/index.d.ts +0 -3
  214. package/node_modules/base64-js/index.js +0 -150
  215. package/node_modules/base64-js/package.json +0 -47
  216. package/node_modules/better-sqlite3/src/better_sqlite3.hpp +0 -1036
  217. package/node_modules/bl/.travis.yml +0 -17
  218. package/node_modules/bl/BufferList.js +0 -396
  219. package/node_modules/bl/LICENSE.md +0 -13
  220. package/node_modules/bl/README.md +0 -247
  221. package/node_modules/bl/bl.js +0 -84
  222. package/node_modules/bl/package.json +0 -37
  223. package/node_modules/bl/test/convert.js +0 -21
  224. package/node_modules/bl/test/indexOf.js +0 -492
  225. package/node_modules/bl/test/isBufferList.js +0 -32
  226. package/node_modules/bl/test/test.js +0 -869
  227. package/node_modules/buffer/AUTHORS.md +0 -70
  228. package/node_modules/buffer/LICENSE +0 -21
  229. package/node_modules/buffer/README.md +0 -410
  230. package/node_modules/buffer/index.d.ts +0 -186
  231. package/node_modules/buffer/index.js +0 -1817
  232. package/node_modules/buffer/package.json +0 -96
  233. package/node_modules/chownr/LICENSE +0 -15
  234. package/node_modules/chownr/README.md +0 -3
  235. package/node_modules/chownr/chownr.js +0 -167
  236. package/node_modules/chownr/package.json +0 -29
  237. package/node_modules/fs-constants/README.md +0 -26
  238. package/node_modules/fs-constants/browser.js +0 -1
  239. package/node_modules/fs-constants/index.js +0 -1
  240. package/node_modules/fs-constants/package.json +0 -19
  241. package/node_modules/ieee754/LICENSE +0 -11
  242. package/node_modules/ieee754/README.md +0 -51
  243. package/node_modules/ieee754/index.d.ts +0 -10
  244. package/node_modules/ieee754/index.js +0 -85
  245. package/node_modules/ieee754/package.json +0 -52
  246. package/node_modules/inherits/LICENSE +0 -16
  247. package/node_modules/inherits/README.md +0 -42
  248. package/node_modules/inherits/inherits.js +0 -9
  249. package/node_modules/inherits/inherits_browser.js +0 -27
  250. package/node_modules/inherits/package.json +0 -29
  251. package/node_modules/readable-stream/CONTRIBUTING.md +0 -38
  252. package/node_modules/readable-stream/GOVERNANCE.md +0 -136
  253. package/node_modules/readable-stream/LICENSE +0 -47
  254. package/node_modules/readable-stream/README.md +0 -106
  255. package/node_modules/readable-stream/errors-browser.js +0 -127
  256. package/node_modules/readable-stream/errors.js +0 -116
  257. package/node_modules/readable-stream/experimentalWarning.js +0 -17
  258. package/node_modules/readable-stream/lib/_stream_duplex.js +0 -126
  259. package/node_modules/readable-stream/lib/_stream_passthrough.js +0 -37
  260. package/node_modules/readable-stream/lib/_stream_readable.js +0 -1027
  261. package/node_modules/readable-stream/lib/_stream_transform.js +0 -190
  262. package/node_modules/readable-stream/lib/_stream_writable.js +0 -641
  263. package/node_modules/readable-stream/lib/internal/streams/async_iterator.js +0 -180
  264. package/node_modules/readable-stream/lib/internal/streams/buffer_list.js +0 -183
  265. package/node_modules/readable-stream/lib/internal/streams/destroy.js +0 -96
  266. package/node_modules/readable-stream/lib/internal/streams/end-of-stream.js +0 -86
  267. package/node_modules/readable-stream/lib/internal/streams/from-browser.js +0 -3
  268. package/node_modules/readable-stream/lib/internal/streams/from.js +0 -52
  269. package/node_modules/readable-stream/lib/internal/streams/pipeline.js +0 -86
  270. package/node_modules/readable-stream/lib/internal/streams/state.js +0 -22
  271. package/node_modules/readable-stream/lib/internal/streams/stream-browser.js +0 -1
  272. package/node_modules/readable-stream/lib/internal/streams/stream.js +0 -1
  273. package/node_modules/readable-stream/package.json +0 -68
  274. package/node_modules/readable-stream/readable-browser.js +0 -9
  275. package/node_modules/readable-stream/readable.js +0 -16
  276. package/node_modules/string_decoder/LICENSE +0 -48
  277. package/node_modules/string_decoder/README.md +0 -47
  278. package/node_modules/string_decoder/lib/string_decoder.js +0 -296
  279. package/node_modules/string_decoder/package.json +0 -34
  280. package/node_modules/tar-fs/.travis.yml +0 -6
  281. package/node_modules/tar-fs/test/fixtures/a/hello.txt +0 -1
  282. package/node_modules/tar-fs/test/fixtures/b/a/test.txt +0 -1
  283. package/node_modules/tar-fs/test/fixtures/d/file1 +0 -0
  284. package/node_modules/tar-fs/test/fixtures/d/file2 +0 -0
  285. package/node_modules/tar-fs/test/fixtures/d/sub-dir/file5 +0 -0
  286. package/node_modules/tar-fs/test/fixtures/d/sub-files/file3 +0 -0
  287. package/node_modules/tar-fs/test/fixtures/d/sub-files/file4 +0 -0
  288. package/node_modules/tar-fs/test/fixtures/e/directory/.ignore +0 -0
  289. package/node_modules/tar-fs/test/fixtures/e/file +0 -0
  290. package/node_modules/tar-fs/test/fixtures/invalid.tar +0 -0
  291. package/node_modules/tar-fs/test/index.js +0 -346
  292. package/node_modules/tar-stream/sandbox.js +0 -11
  293. package/node_modules/util-deprecate/History.md +0 -16
  294. package/node_modules/util-deprecate/LICENSE +0 -24
  295. package/node_modules/util-deprecate/README.md +0 -53
  296. package/node_modules/util-deprecate/browser.js +0 -67
  297. package/node_modules/util-deprecate/node.js +0 -6
  298. package/node_modules/util-deprecate/package.json +0 -27
  299. package/test-startup.sh +0 -14
@@ -0,0 +1,49 @@
1
+ declare const constants: {
2
+ O_RDWR: number
3
+ O_RDONLY: number
4
+ O_WRONLY: number
5
+ O_CREAT: number
6
+ O_TRUNC: number
7
+ O_APPEND: number
8
+
9
+ F_OK: number
10
+ R_OK: number
11
+ W_OK: number
12
+ X_OK: number
13
+
14
+ S_IFMT: number
15
+ S_IFREG: number
16
+ S_IFDIR: number
17
+ S_IFCHR: number
18
+ S_IFLNK: number
19
+ S_IFBLK: number
20
+ S_IFIFO: number
21
+ S_IFSOCK: number
22
+
23
+ S_IRUSR: number
24
+ S_IWUSR: number
25
+ S_IXUSR: number
26
+ S_IRGRP: number
27
+ S_IWGRP: number
28
+ S_IXGRP: number
29
+ S_IROTH: number
30
+ S_IWOTH: number
31
+ S_IXOTH: number
32
+
33
+ UV_DIRENT_UNKNOWN: number
34
+ UV_DIRENT_FILE: number
35
+ UV_DIRENT_DIR: number
36
+ UV_DIRENT_LINK: number
37
+ UV_DIRENT_FIFO: number
38
+ UV_DIRENT_SOCKET: number
39
+ UV_DIRENT_CHAR: number
40
+ UV_DIRENT_BLOCK: number
41
+
42
+ COPYFILE_EXCL: number
43
+ COPYFILE_FICLONE: number
44
+ COPYFILE_FICLONE_FORCE: number
45
+ UV_FS_SYMLINK_DIR: number
46
+ UV_FS_SYMLINK_JUNCTION: number
47
+ }
48
+
49
+ export = constants
@@ -0,0 +1,49 @@
1
+ const binding = require('../binding')
2
+
3
+ module.exports = {
4
+ O_RDWR: binding.O_RDWR,
5
+ O_RDONLY: binding.O_RDONLY,
6
+ O_WRONLY: binding.O_WRONLY,
7
+ O_CREAT: binding.O_CREAT,
8
+ O_TRUNC: binding.O_TRUNC,
9
+ O_APPEND: binding.O_APPEND,
10
+
11
+ F_OK: binding.F_OK || 0,
12
+ R_OK: binding.R_OK || 0,
13
+ W_OK: binding.W_OK || 0,
14
+ X_OK: binding.X_OK || 0,
15
+
16
+ S_IFMT: binding.S_IFMT,
17
+ S_IFREG: binding.S_IFREG,
18
+ S_IFDIR: binding.S_IFDIR,
19
+ S_IFCHR: binding.S_IFCHR,
20
+ S_IFLNK: binding.S_IFLNK,
21
+ S_IFBLK: binding.S_IFBLK || 0,
22
+ S_IFIFO: binding.S_IFIFO || 0,
23
+ S_IFSOCK: binding.S_IFSOCK || 0,
24
+
25
+ S_IRUSR: binding.S_IRUSR || 0,
26
+ S_IWUSR: binding.S_IWUSR || 0,
27
+ S_IXUSR: binding.S_IXUSR || 0,
28
+ S_IRGRP: binding.S_IRGRP || 0,
29
+ S_IWGRP: binding.S_IWGRP || 0,
30
+ S_IXGRP: binding.S_IXGRP || 0,
31
+ S_IROTH: binding.S_IROTH || 0,
32
+ S_IWOTH: binding.S_IWOTH || 0,
33
+ S_IXOTH: binding.S_IXOTH || 0,
34
+
35
+ UV_DIRENT_UNKNOWN: binding.UV_DIRENT_UNKNOWN,
36
+ UV_DIRENT_FILE: binding.UV_DIRENT_FILE,
37
+ UV_DIRENT_DIR: binding.UV_DIRENT_DIR,
38
+ UV_DIRENT_LINK: binding.UV_DIRENT_LINK,
39
+ UV_DIRENT_FIFO: binding.UV_DIRENT_FIFO,
40
+ UV_DIRENT_SOCKET: binding.UV_DIRENT_SOCKET,
41
+ UV_DIRENT_CHAR: binding.UV_DIRENT_CHAR,
42
+ UV_DIRENT_BLOCK: binding.UV_DIRENT_BLOCK,
43
+
44
+ COPYFILE_EXCL: binding.UV_FS_COPYFILE_EXCL,
45
+ COPYFILE_FICLONE: binding.UV_FS_COPYFILE_FICLONE,
46
+ COPYFILE_FICLONE_FORCE: binding.UV_FS_COPYFILE_FICLONE_FORCE,
47
+ UV_FS_SYMLINK_DIR: binding.UV_FS_SYMLINK_DIR,
48
+ UV_FS_SYMLINK_JUNCTION: binding.UV_FS_SYMLINK_JUNCTION
49
+ }
@@ -0,0 +1,11 @@
1
+ declare class FileError extends Error {
2
+ private constructor(msg: string)
3
+
4
+ readonly code: string
5
+ readonly operation?: string
6
+ readonly path?: string
7
+ readonly destination?: string
8
+ readonly fd?: number
9
+ }
10
+
11
+ export = FileError
@@ -0,0 +1,55 @@
1
+ const os = require('bare-os')
2
+
3
+ module.exports = class FileError extends Error {
4
+ constructor(msg, opts = {}) {
5
+ const { code, operation = null, path = null, destination = null, fd = -1 } = opts
6
+
7
+ if (operation !== null) msg += describe(operation, opts)
8
+
9
+ super(`${code}: ${msg}`)
10
+
11
+ this.code = code
12
+
13
+ if (operation !== null) this.operation = operation
14
+ if (path !== null) this.path = path
15
+ if (destination !== null) this.destination = destination
16
+ if (fd !== -1) this.fd = fd
17
+ }
18
+
19
+ get name() {
20
+ return 'FileError'
21
+ }
22
+
23
+ // For Node.js compatibility
24
+ get errno() {
25
+ return os.constants.errnos[this.code]
26
+ }
27
+
28
+ // For Node.js compatibility
29
+ get syscall() {
30
+ return this.operation
31
+ }
32
+
33
+ // For Node.js compatibility
34
+ get dest() {
35
+ return this.destination
36
+ }
37
+ }
38
+
39
+ function describe(operation, opts) {
40
+ const { path = null, destination = null, fd = -1 } = opts
41
+
42
+ let result = `, ${operation}`
43
+
44
+ if (path !== null) {
45
+ result += ` ${JSON.stringify(path)}`
46
+
47
+ if (destination !== null) {
48
+ result += ` -> ${JSON.stringify(destination)}`
49
+ }
50
+ } else if (fd !== -1) {
51
+ result += ` ${fd}`
52
+ }
53
+
54
+ return result
55
+ }
@@ -0,0 +1,71 @@
1
+ {
2
+ "name": "bare-fs",
3
+ "version": "4.4.11",
4
+ "description": "Native file system operations for Javascript",
5
+ "exports": {
6
+ "./package": "./package.json",
7
+ ".": {
8
+ "types": "./index.d.ts",
9
+ "default": "./index.js"
10
+ },
11
+ "./promises": {
12
+ "types": "./promises.d.ts",
13
+ "default": "./promises.js"
14
+ },
15
+ "./constants": {
16
+ "types": "./lib/constants.d.ts",
17
+ "default": "./lib/constants.js"
18
+ }
19
+ },
20
+ "files": [
21
+ "index.js",
22
+ "index.d.ts",
23
+ "promises.js",
24
+ "promises.d.ts",
25
+ "binding.c",
26
+ "binding.js",
27
+ "CMakeLists.txt",
28
+ "lib",
29
+ "prebuilds"
30
+ ],
31
+ "addon": true,
32
+ "scripts": {
33
+ "test": "prettier . --check && bare test.js"
34
+ },
35
+ "repository": {
36
+ "type": "git",
37
+ "url": "git+https://github.com/holepunchto/bare-fs.git"
38
+ },
39
+ "author": "Holepunch",
40
+ "license": "Apache-2.0",
41
+ "bugs": {
42
+ "url": "https://github.com/holepunchto/bare-fs/issues"
43
+ },
44
+ "homepage": "https://github.com/holepunchto/bare-fs#readme",
45
+ "engines": {
46
+ "bare": ">=1.16.0"
47
+ },
48
+ "dependencies": {
49
+ "bare-events": "^2.5.4",
50
+ "bare-path": "^3.0.0",
51
+ "bare-stream": "^2.6.4",
52
+ "bare-url": "^2.2.2",
53
+ "fast-fifo": "^1.3.2"
54
+ },
55
+ "devDependencies": {
56
+ "bare-buffer": "^3.0.2",
57
+ "bare-crypto": "^1.11.2",
58
+ "brittle": "^3.1.1",
59
+ "cmake-bare": "^1.1.7",
60
+ "prettier": "^3.4.1",
61
+ "prettier-config-holepunch": "^2.0.0"
62
+ },
63
+ "peerDependencies": {
64
+ "bare-buffer": "*"
65
+ },
66
+ "peerDependenciesMeta": {
67
+ "bare-buffer": {
68
+ "optional": true
69
+ }
70
+ }
71
+ }
@@ -0,0 +1,282 @@
1
+ import EventEmitter, { EventMap } from 'bare-events'
2
+ import Buffer, { BufferEncoding } from 'bare-buffer'
3
+ import {
4
+ constants,
5
+ AppendFileOptions,
6
+ CpOptions,
7
+ Dir,
8
+ MkdirOptions,
9
+ OpendirOptions,
10
+ Path,
11
+ ReadFileOptions,
12
+ ReadStream,
13
+ ReadStreamOptions,
14
+ ReaddirOptions,
15
+ ReadlinkOptions,
16
+ RealpathOptions,
17
+ RmOptions,
18
+ Stats,
19
+ Watcher,
20
+ WatcherOptions,
21
+ WriteFileOptions,
22
+ WriteStream,
23
+ WriteStreamOptions
24
+ } from '.'
25
+
26
+ export { constants }
27
+
28
+ interface FileHandleEvents extends EventMap {
29
+ close: []
30
+ }
31
+
32
+ interface FileHandle extends EventEmitter<FileHandleEvents>, AsyncDisposable {
33
+ close(): Promise<void>
34
+
35
+ read(
36
+ buffer: Buffer | ArrayBufferView,
37
+ offset?: number,
38
+ len?: number,
39
+ pos?: number
40
+ ): Promise<number>
41
+
42
+ readv(buffers: ArrayBufferView[], position?: number): Promise<number>
43
+
44
+ write(
45
+ data: Buffer | ArrayBufferView,
46
+ offset?: number,
47
+ len?: number,
48
+ pos?: number
49
+ ): Promise<number>
50
+
51
+ write(data: string, pos?: number, encoding?: BufferEncoding): Promise<number>
52
+
53
+ stat(): Promise<Stats>
54
+
55
+ chmod(mode: string | number): Promise<void>
56
+
57
+ createReadStream(opts?: ReadStreamOptions): ReadStream
58
+
59
+ createWriteStream(opts?: WriteStreamOptions): WriteStream
60
+ }
61
+
62
+ declare class FileHandle {
63
+ private constructor(fd: number)
64
+ }
65
+
66
+ export function open(
67
+ filepath: Path,
68
+ flags?: Flag | number,
69
+ mode?: string | number
70
+ ): Promise<FileHandle>
71
+
72
+ export function access(filepath: Path, mode?: number): Promise<void>
73
+
74
+ export function appendFile(
75
+ filepath: Path,
76
+ data: string | Buffer | ArrayBufferView,
77
+ opts?: AppendFileOptions
78
+ ): Promise<void>
79
+
80
+ export function appendFile(
81
+ filepath: Path,
82
+ data: string | Buffer | ArrayBufferView,
83
+ encoding: BufferEncoding
84
+ ): Promise<void>
85
+
86
+ export function chmod(filepath: Path, mode: string | number): Promise<void>
87
+
88
+ export function copyFile(src: Path, dst: Path, mode?: number): Promise<void>
89
+
90
+ export function cp(src: Path, dst: Path, opts?: CpOptions): Promise<void>
91
+
92
+ export function lstat(filepath: Path): Promise<Stats>
93
+
94
+ export function mkdir(filepath: Path, opts?: MkdirOptions): Promise<void>
95
+
96
+ export function mkdir(filepath: Path, mode: number): Promise<void>
97
+
98
+ export function opendir(
99
+ filepath: Path,
100
+ opts: OpendirOptions & { encoding?: BufferEncoding }
101
+ ): Promise<Dir<string>>
102
+
103
+ export function opendir(
104
+ filepath: Path,
105
+ opts: OpendirOptions & { encoding: 'buffer' }
106
+ ): Promise<Dir<Buffer>>
107
+
108
+ export function opendir(filepath: Path, opts: OpendirOptions): Promise<Dir>
109
+
110
+ export function opendir(filepath: Path, encoding: BufferEncoding): Promise<Dir<string>>
111
+
112
+ export function opendir(filepath: Path, encoding: 'buffer'): Promise<Dir<Buffer>>
113
+
114
+ export function opendir(filepath: Path, encoding: BufferEncoding | 'buffer'): Promise<Dir>
115
+
116
+ export function opendir(filepath: Path): Promise<Dir<string>>
117
+
118
+ export function readFile(
119
+ filepath: Path,
120
+ opts: ReadFileOptions & { encoding: BufferEncoding }
121
+ ): Promise<string>
122
+
123
+ export function readFile(
124
+ filepath: Path,
125
+ opts: ReadFileOptions & { encoding?: 'buffer' }
126
+ ): Promise<Buffer>
127
+
128
+ export function readFile(filepath: Path, opts: ReadFileOptions): Promise<string | Buffer>
129
+
130
+ export function readFile(filepath: Path, encoding: BufferEncoding): Promise<string>
131
+
132
+ export function readFile(filepath: Path, encoding: 'buffer'): Promise<Buffer>
133
+
134
+ export function readFile(
135
+ filepath: Path,
136
+ encoding?: BufferEncoding | 'buffer'
137
+ ): Promise<string | Buffer>
138
+
139
+ export function readFile(filepath: Path): Promise<Buffer>
140
+
141
+ export function readdir(
142
+ filepath: Path,
143
+ opts: ReaddirOptions & { encoding?: BufferEncoding }
144
+ ): Promise<Dir<string>[] | string[]>
145
+
146
+ export function readdir(
147
+ filepath: Path,
148
+ opts: ReaddirOptions & { encoding?: BufferEncoding; withFileTypes: true }
149
+ ): Promise<Dir<string>[]>
150
+
151
+ export function readdir(
152
+ filepath: Path,
153
+ opts: ReaddirOptions & { encoding?: BufferEncoding; withFileTypes?: false }
154
+ ): Promise<string[]>
155
+
156
+ export function readdir(
157
+ filepath: Path,
158
+ opts: ReaddirOptions & { encoding: 'buffer' }
159
+ ): Promise<Dir<Buffer>[] | Buffer[]>
160
+
161
+ export function readdir(
162
+ filepath: Path,
163
+ opts: ReaddirOptions & { encoding: 'buffer'; withFileTypes: true }
164
+ ): Promise<Dir<Buffer>[]>
165
+
166
+ export function readdir(
167
+ filepath: Path,
168
+ opts: ReaddirOptions & { encoding: 'buffer'; withFileTypes?: false }
169
+ ): Promise<Buffer[]>
170
+
171
+ export function readdir(
172
+ filepath: Path,
173
+ opts: ReaddirOptions & { withFileTypes: true }
174
+ ): Promise<Dir<string | Buffer>[]>
175
+
176
+ export function readdir(
177
+ filepath: Path,
178
+ opts: ReaddirOptions & { withFileTypes?: false }
179
+ ): Promise<string[] | Buffer[]>
180
+
181
+ export function readdir(filepath: Path, opts: ReaddirOptions): Promise<Dir[] | string[] | Buffer[]>
182
+
183
+ export function readdir(filepath: Path, encoding: BufferEncoding): Promise<string[]>
184
+
185
+ export function readdir(filepath: Path, encoding: 'buffer'): Promise<Buffer[]>
186
+
187
+ export function readdir(
188
+ filepath: Path,
189
+ encoding: BufferEncoding | 'buffer'
190
+ ): Promise<string[] | Buffer[]>
191
+
192
+ export function readdir(filepath: Path): Promise<string[]>
193
+
194
+ export function readlink(
195
+ filepath: Path,
196
+ opts: ReadlinkOptions & { encoding?: BufferEncoding }
197
+ ): Promise<string>
198
+
199
+ export function readlink(
200
+ filepath: Path,
201
+ opts: ReadlinkOptions & { encoding: 'buffer' }
202
+ ): Promise<Buffer>
203
+
204
+ export function readlink(filepath: Path, opts: ReadlinkOptions): Promise<string | Buffer>
205
+
206
+ export function readlink(filepath: Path, encoding: BufferEncoding): Promise<string>
207
+
208
+ export function readlink(filepath: Path, encoding: 'buffer'): Promise<Buffer>
209
+
210
+ export function readlink(
211
+ filepath: Path,
212
+ encoding: BufferEncoding | 'buffer'
213
+ ): Promise<string | Buffer>
214
+
215
+ export function readlink(filepath: Path): Promise<string>
216
+
217
+ export function realpath(
218
+ filepath: Path,
219
+ opts: RealpathOptions & { encoding?: BufferEncoding }
220
+ ): Promise<string>
221
+
222
+ export function realpath(
223
+ filepath: Path,
224
+ opts: RealpathOptions & { encoding: 'buffer' }
225
+ ): Promise<Buffer>
226
+
227
+ export function realpath(filepath: Path, opts: RealpathOptions): Promise<string | Buffer>
228
+
229
+ export function realpath(filepath: Path, encoding: BufferEncoding): Promise<string>
230
+
231
+ export function realpath(filepath: Path, encoding: 'buffer'): Promise<Buffer>
232
+
233
+ export function realpath(
234
+ filepath: Path,
235
+ encoding: BufferEncoding | 'buffer'
236
+ ): Promise<string | Buffer>
237
+
238
+ export function realpath(filepath: Path): Promise<string>
239
+
240
+ export function rename(src: Path, dst: Path): Promise<void>
241
+
242
+ export function rm(filepath: Path, opts?: RmOptions): Promise<void>
243
+
244
+ export function rmdir(filepath: Path): Promise<void>
245
+
246
+ export function stat(filepath: Path): Promise<Stats>
247
+
248
+ export function symlink(target: Path, filepath: Path, type?: string | number): Promise<void>
249
+
250
+ export function unlink(filepath: Path): Promise<void>
251
+
252
+ export function watch(
253
+ filepath: Path,
254
+ opts: WatcherOptions & { encoding?: BufferEncoding }
255
+ ): Watcher<string>
256
+
257
+ export function watch(
258
+ filepath: Path,
259
+ opts: WatcherOptions & { encoding: 'buffer' }
260
+ ): Watcher<Buffer>
261
+
262
+ export function watch(filepath: Path, opts: WatcherOptions): Watcher
263
+
264
+ export function watch(filepath: Path, encoding: BufferEncoding): Watcher<string>
265
+
266
+ export function watch(filepath: Path, encoding: 'buffer'): Watcher<Buffer>
267
+
268
+ export function watch(filepath: Path, encoding: BufferEncoding | 'buffer'): Watcher
269
+
270
+ export function watch(filepath: Path): Watcher<string>
271
+
272
+ export function writeFile(
273
+ filepath: Path,
274
+ data: string | Buffer | ArrayBufferView,
275
+ opts?: WriteFileOptions
276
+ ): Promise<void>
277
+
278
+ export function writeFile(
279
+ filepath: Path,
280
+ data: string | Buffer | ArrayBufferView,
281
+ encoding: BufferEncoding
282
+ ): Promise<void>
@@ -0,0 +1,90 @@
1
+ const EventEmitter = require('bare-events')
2
+ const fs = require('.')
3
+
4
+ class FileHandle extends EventEmitter {
5
+ constructor(fd) {
6
+ this.fd = fd
7
+ }
8
+
9
+ async close() {
10
+ await fs.close(fd)
11
+
12
+ this.fd = -1
13
+ this.emit('close')
14
+ }
15
+
16
+ async read(buffer, ...args) {
17
+ return {
18
+ bytesRead: await fs.read(this.fd, buffer, ...args),
19
+ buffer
20
+ }
21
+ }
22
+
23
+ async readv(buffers, ...args) {
24
+ return {
25
+ bytesRead: await fs.readv(this.fd, buffers, ...args),
26
+ buffers
27
+ }
28
+ }
29
+
30
+ async write(buffer, ...args) {
31
+ return {
32
+ bytesWritten: await fs.write(this.fd, buffer, ...args),
33
+ buffer
34
+ }
35
+ }
36
+
37
+ async writev(buffers, ...args) {
38
+ return {
39
+ bytesWritten: await fs.writev(this.fd, buffers, ...args),
40
+ buffers
41
+ }
42
+ }
43
+
44
+ async stat() {
45
+ return fs.fstat(this.fd)
46
+ }
47
+
48
+ async chmod(mode) {
49
+ await fs.fchmod(this.fd, mode)
50
+ }
51
+
52
+ createReadStream(opts) {
53
+ return fs.createReadStream(null, { ...opts, fd: this.fd })
54
+ }
55
+
56
+ createWriteStream(opts) {
57
+ return fs.createWriteStream(null, { ...opts, fd: this.fd })
58
+ }
59
+
60
+ async [Symbol.asyncDispose]() {
61
+ await this.close()
62
+ }
63
+ }
64
+
65
+ exports.open = async function open(filepath, flags, mode) {
66
+ return new FileHandle(await fs.open(filepath, flags, mode))
67
+ }
68
+
69
+ exports.access = fs.access
70
+ exports.appendFile = fs.appendFile
71
+ exports.chmod = fs.chmod
72
+ exports.constants = fs.constants
73
+ exports.copyFile = fs.copyFile
74
+ exports.cp = fs.cp
75
+ exports.lstat = fs.lstat
76
+ exports.mkdir = fs.mkdir
77
+ exports.opendir = fs.opendir
78
+ exports.readFile = fs.readFile
79
+ exports.readdir = fs.readdir
80
+ exports.readlink = fs.readlink
81
+ exports.realpath = fs.realpath
82
+ exports.rename = fs.rename
83
+ exports.rm = fs.rm
84
+ exports.rmdir = fs.rmdir
85
+ exports.stat = fs.stat
86
+ exports.symlink = fs.symlink
87
+ exports.unlink = fs.unlink
88
+ exports.utimes = fs.utimes
89
+ exports.watch = fs.watch
90
+ exports.writeFile = fs.writeFile
@@ -0,0 +1,13 @@
1
+ cmake_minimum_required(VERSION 3.25)
2
+
3
+ find_package(cmake-bare REQUIRED PATHS node_modules/cmake-bare)
4
+
5
+ project(bare_os C)
6
+
7
+ add_bare_module(bare_os)
8
+
9
+ target_sources(
10
+ ${bare_os}
11
+ PRIVATE
12
+ binding.c
13
+ )