@effect/platform-node-shared 0.57.0 → 4.0.0-beta.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.
Files changed (218) hide show
  1. package/README.md +3 -3
  2. package/dist/NodeChildProcessSpawner.d.ts +37 -0
  3. package/dist/NodeChildProcessSpawner.d.ts.map +1 -0
  4. package/dist/NodeChildProcessSpawner.js +567 -0
  5. package/dist/NodeChildProcessSpawner.js.map +1 -0
  6. package/dist/{dts/NodeClusterSocket.d.ts → NodeClusterSocket.d.ts} +4 -7
  7. package/dist/NodeClusterSocket.d.ts.map +1 -0
  8. package/dist/{esm/NodeClusterSocket.js → NodeClusterSocket.js} +9 -10
  9. package/dist/NodeClusterSocket.js.map +1 -0
  10. package/dist/NodeFileSystem.d.ts +8 -0
  11. package/dist/NodeFileSystem.d.ts.map +1 -0
  12. package/dist/{esm/internal/fileSystem.js → NodeFileSystem.js} +125 -96
  13. package/dist/NodeFileSystem.js.map +1 -0
  14. package/dist/NodePath.d.ts +18 -0
  15. package/dist/NodePath.d.ts.map +1 -0
  16. package/dist/NodePath.js +56 -0
  17. package/dist/NodePath.js.map +1 -0
  18. package/dist/NodeRuntime.d.ts +28 -0
  19. package/dist/NodeRuntime.d.ts.map +1 -0
  20. package/dist/{esm/internal/runtime.js → NodeRuntime.js} +8 -8
  21. package/dist/NodeRuntime.js.map +1 -0
  22. package/dist/NodeSink.d.ts +40 -0
  23. package/dist/NodeSink.d.ts.map +1 -0
  24. package/dist/NodeSink.js +50 -0
  25. package/dist/NodeSink.js.map +1 -0
  26. package/dist/{dts/NodeSocket.d.ts → NodeSocket.d.ts} +10 -10
  27. package/dist/NodeSocket.d.ts.map +1 -0
  28. package/dist/{esm/NodeSocket.js → NodeSocket.js} +51 -39
  29. package/dist/NodeSocket.js.map +1 -0
  30. package/dist/{dts/NodeSocketServer.d.ts → NodeSocketServer.d.ts} +8 -10
  31. package/dist/NodeSocketServer.d.ts.map +1 -0
  32. package/dist/NodeSocketServer.js +192 -0
  33. package/dist/NodeSocketServer.js.map +1 -0
  34. package/dist/NodeStdio.d.ts +11 -0
  35. package/dist/NodeStdio.d.ts.map +1 -0
  36. package/dist/NodeStdio.js +43 -0
  37. package/dist/NodeStdio.js.map +1 -0
  38. package/dist/NodeStream.d.ts +127 -0
  39. package/dist/NodeStream.d.ts.map +1 -0
  40. package/dist/NodeStream.js +249 -0
  41. package/dist/NodeStream.js.map +1 -0
  42. package/dist/NodeTerminal.d.ts +15 -0
  43. package/dist/NodeTerminal.d.ts.map +1 -0
  44. package/dist/{esm/internal/terminal.js → NodeTerminal.js} +28 -21
  45. package/dist/NodeTerminal.js.map +1 -0
  46. package/dist/internal/utils.d.ts +2 -0
  47. package/dist/internal/utils.d.ts.map +1 -0
  48. package/dist/{esm/internal/error.js → internal/utils.js} +4 -5
  49. package/dist/internal/utils.js.map +1 -0
  50. package/package.json +53 -124
  51. package/src/NodeChildProcessSpawner.ts +713 -0
  52. package/src/NodeClusterSocket.ts +12 -13
  53. package/src/NodeFileSystem.ts +632 -5
  54. package/src/NodePath.ts +48 -9
  55. package/src/NodeRuntime.ts +53 -4
  56. package/src/NodeSink.ts +65 -62
  57. package/src/NodeSocket.ts +65 -49
  58. package/src/NodeSocketServer.ts +108 -88
  59. package/src/NodeStdio.ts +49 -0
  60. package/src/NodeStream.ts +324 -83
  61. package/src/NodeTerminal.ts +100 -9
  62. package/src/internal/{error.ts → utils.ts} +6 -7
  63. package/NodeClusterSocket/package.json +0 -6
  64. package/NodeCommandExecutor/package.json +0 -6
  65. package/NodeFileSystem/ParcelWatcher/package.json +0 -6
  66. package/NodeFileSystem/package.json +0 -6
  67. package/NodeKeyValueStore/package.json +0 -6
  68. package/NodeMultipart/package.json +0 -6
  69. package/NodePath/package.json +0 -6
  70. package/NodeRuntime/package.json +0 -6
  71. package/NodeSink/package.json +0 -6
  72. package/NodeSocket/package.json +0 -6
  73. package/NodeSocketServer/package.json +0 -6
  74. package/NodeStream/package.json +0 -6
  75. package/NodeTerminal/package.json +0 -6
  76. package/dist/cjs/NodeClusterSocket.js +0 -50
  77. package/dist/cjs/NodeClusterSocket.js.map +0 -1
  78. package/dist/cjs/NodeCommandExecutor.js +0 -14
  79. package/dist/cjs/NodeCommandExecutor.js.map +0 -1
  80. package/dist/cjs/NodeFileSystem/ParcelWatcher.js +0 -20
  81. package/dist/cjs/NodeFileSystem/ParcelWatcher.js.map +0 -1
  82. package/dist/cjs/NodeFileSystem.js +0 -18
  83. package/dist/cjs/NodeFileSystem.js.map +0 -1
  84. package/dist/cjs/NodeKeyValueStore.js +0 -18
  85. package/dist/cjs/NodeKeyValueStore.js.map +0 -1
  86. package/dist/cjs/NodeMultipart.js +0 -24
  87. package/dist/cjs/NodeMultipart.js.map +0 -1
  88. package/dist/cjs/NodePath.js +0 -28
  89. package/dist/cjs/NodePath.js.map +0 -1
  90. package/dist/cjs/NodeRuntime.js +0 -14
  91. package/dist/cjs/NodeRuntime.js.map +0 -1
  92. package/dist/cjs/NodeSink.js +0 -50
  93. package/dist/cjs/NodeSink.js.map +0 -1
  94. package/dist/cjs/NodeSocket.js +0 -153
  95. package/dist/cjs/NodeSocket.js.map +0 -1
  96. package/dist/cjs/NodeSocketServer.js +0 -178
  97. package/dist/cjs/NodeSocketServer.js.map +0 -1
  98. package/dist/cjs/NodeStream.js +0 -76
  99. package/dist/cjs/NodeStream.js.map +0 -1
  100. package/dist/cjs/NodeTerminal.js +0 -19
  101. package/dist/cjs/NodeTerminal.js.map +0 -1
  102. package/dist/cjs/internal/commandExecutor.js +0 -153
  103. package/dist/cjs/internal/commandExecutor.js.map +0 -1
  104. package/dist/cjs/internal/error.js +0 -45
  105. package/dist/cjs/internal/error.js.map +0 -1
  106. package/dist/cjs/internal/fileSystem/parcelWatcher.js +0 -68
  107. package/dist/cjs/internal/fileSystem/parcelWatcher.js.map +0 -1
  108. package/dist/cjs/internal/fileSystem.js +0 -400
  109. package/dist/cjs/internal/fileSystem.js.map +0 -1
  110. package/dist/cjs/internal/multipart.js +0 -147
  111. package/dist/cjs/internal/multipart.js.map +0 -1
  112. package/dist/cjs/internal/path.js +0 -53
  113. package/dist/cjs/internal/path.js.map +0 -1
  114. package/dist/cjs/internal/runtime.js +0 -37
  115. package/dist/cjs/internal/runtime.js.map +0 -1
  116. package/dist/cjs/internal/sink.js +0 -28
  117. package/dist/cjs/internal/sink.js.map +0 -1
  118. package/dist/cjs/internal/stream.js +0 -233
  119. package/dist/cjs/internal/stream.js.map +0 -1
  120. package/dist/cjs/internal/terminal.js +0 -86
  121. package/dist/cjs/internal/terminal.js.map +0 -1
  122. package/dist/dts/NodeClusterSocket.d.ts.map +0 -1
  123. package/dist/dts/NodeCommandExecutor.d.ts +0 -12
  124. package/dist/dts/NodeCommandExecutor.d.ts.map +0 -1
  125. package/dist/dts/NodeFileSystem/ParcelWatcher.d.ts +0 -13
  126. package/dist/dts/NodeFileSystem/ParcelWatcher.d.ts.map +0 -1
  127. package/dist/dts/NodeFileSystem.d.ts +0 -11
  128. package/dist/dts/NodeFileSystem.d.ts.map +0 -1
  129. package/dist/dts/NodeKeyValueStore.d.ts +0 -12
  130. package/dist/dts/NodeKeyValueStore.d.ts.map +0 -1
  131. package/dist/dts/NodeMultipart.d.ts +0 -27
  132. package/dist/dts/NodeMultipart.d.ts.map +0 -1
  133. package/dist/dts/NodePath.d.ts +0 -21
  134. package/dist/dts/NodePath.d.ts.map +0 -1
  135. package/dist/dts/NodeRuntime.d.ts +0 -10
  136. package/dist/dts/NodeRuntime.d.ts.map +0 -1
  137. package/dist/dts/NodeSink.d.ts +0 -36
  138. package/dist/dts/NodeSink.d.ts.map +0 -1
  139. package/dist/dts/NodeSocket.d.ts.map +0 -1
  140. package/dist/dts/NodeSocketServer.d.ts.map +0 -1
  141. package/dist/dts/NodeStream.d.ts +0 -119
  142. package/dist/dts/NodeStream.d.ts.map +0 -1
  143. package/dist/dts/NodeTerminal.d.ts +0 -18
  144. package/dist/dts/NodeTerminal.d.ts.map +0 -1
  145. package/dist/dts/internal/commandExecutor.d.ts +0 -2
  146. package/dist/dts/internal/commandExecutor.d.ts.map +0 -1
  147. package/dist/dts/internal/error.d.ts +0 -2
  148. package/dist/dts/internal/error.d.ts.map +0 -1
  149. package/dist/dts/internal/fileSystem/parcelWatcher.d.ts +0 -4
  150. package/dist/dts/internal/fileSystem/parcelWatcher.d.ts.map +0 -1
  151. package/dist/dts/internal/fileSystem.d.ts +0 -2
  152. package/dist/dts/internal/fileSystem.d.ts.map +0 -1
  153. package/dist/dts/internal/multipart.d.ts +0 -2
  154. package/dist/dts/internal/multipart.d.ts.map +0 -1
  155. package/dist/dts/internal/path.d.ts +0 -2
  156. package/dist/dts/internal/path.d.ts.map +0 -1
  157. package/dist/dts/internal/runtime.d.ts +0 -2
  158. package/dist/dts/internal/runtime.d.ts.map +0 -1
  159. package/dist/dts/internal/sink.d.ts +0 -2
  160. package/dist/dts/internal/sink.d.ts.map +0 -1
  161. package/dist/dts/internal/stream.d.ts +0 -2
  162. package/dist/dts/internal/stream.d.ts.map +0 -1
  163. package/dist/dts/internal/terminal.d.ts +0 -2
  164. package/dist/dts/internal/terminal.d.ts.map +0 -1
  165. package/dist/esm/NodeClusterSocket.js.map +0 -1
  166. package/dist/esm/NodeCommandExecutor.js +0 -7
  167. package/dist/esm/NodeCommandExecutor.js.map +0 -1
  168. package/dist/esm/NodeFileSystem/ParcelWatcher.js +0 -12
  169. package/dist/esm/NodeFileSystem/ParcelWatcher.js.map +0 -1
  170. package/dist/esm/NodeFileSystem.js +0 -10
  171. package/dist/esm/NodeFileSystem.js.map +0 -1
  172. package/dist/esm/NodeKeyValueStore.js +0 -10
  173. package/dist/esm/NodeKeyValueStore.js.map +0 -1
  174. package/dist/esm/NodeMultipart.js +0 -17
  175. package/dist/esm/NodeMultipart.js.map +0 -1
  176. package/dist/esm/NodePath.js +0 -20
  177. package/dist/esm/NodePath.js.map +0 -1
  178. package/dist/esm/NodeRuntime.js +0 -7
  179. package/dist/esm/NodeRuntime.js.map +0 -1
  180. package/dist/esm/NodeSink.js +0 -43
  181. package/dist/esm/NodeSink.js.map +0 -1
  182. package/dist/esm/NodeSocket.js.map +0 -1
  183. package/dist/esm/NodeSocketServer.js +0 -167
  184. package/dist/esm/NodeSocketServer.js.map +0 -1
  185. package/dist/esm/NodeStream.js +0 -69
  186. package/dist/esm/NodeStream.js.map +0 -1
  187. package/dist/esm/NodeTerminal.js +0 -12
  188. package/dist/esm/NodeTerminal.js.map +0 -1
  189. package/dist/esm/internal/commandExecutor.js +0 -146
  190. package/dist/esm/internal/commandExecutor.js.map +0 -1
  191. package/dist/esm/internal/error.js.map +0 -1
  192. package/dist/esm/internal/fileSystem/parcelWatcher.js +0 -61
  193. package/dist/esm/internal/fileSystem/parcelWatcher.js.map +0 -1
  194. package/dist/esm/internal/fileSystem.js.map +0 -1
  195. package/dist/esm/internal/multipart.js +0 -137
  196. package/dist/esm/internal/multipart.js.map +0 -1
  197. package/dist/esm/internal/path.js +0 -46
  198. package/dist/esm/internal/path.js.map +0 -1
  199. package/dist/esm/internal/runtime.js.map +0 -1
  200. package/dist/esm/internal/sink.js +0 -19
  201. package/dist/esm/internal/sink.js.map +0 -1
  202. package/dist/esm/internal/stream.js +0 -217
  203. package/dist/esm/internal/stream.js.map +0 -1
  204. package/dist/esm/internal/terminal.js.map +0 -1
  205. package/dist/esm/package.json +0 -4
  206. package/src/NodeCommandExecutor.ts +0 -13
  207. package/src/NodeFileSystem/ParcelWatcher.ts +0 -15
  208. package/src/NodeKeyValueStore.ts +0 -20
  209. package/src/NodeMultipart.ts +0 -40
  210. package/src/internal/commandExecutor.ts +0 -251
  211. package/src/internal/fileSystem/parcelWatcher.ts +0 -64
  212. package/src/internal/fileSystem.ts +0 -648
  213. package/src/internal/multipart.ts +0 -141
  214. package/src/internal/path.ts +0 -63
  215. package/src/internal/runtime.ts +0 -34
  216. package/src/internal/sink.ts +0 -57
  217. package/src/internal/stream.ts +0 -375
  218. package/src/internal/terminal.ts +0 -100
@@ -1,400 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.layer = void 0;
7
- var _Effectify = require("@effect/platform/Effectify");
8
- var Error = _interopRequireWildcard(require("@effect/platform/Error"));
9
- var FileSystem = _interopRequireWildcard(require("@effect/platform/FileSystem"));
10
- var Effect = _interopRequireWildcard(require("effect/Effect"));
11
- var _Function = require("effect/Function");
12
- var Layer = _interopRequireWildcard(require("effect/Layer"));
13
- var Option = _interopRequireWildcard(require("effect/Option"));
14
- var Stream = _interopRequireWildcard(require("effect/Stream"));
15
- var Crypto = _interopRequireWildcard(require("node:crypto"));
16
- var NFS = _interopRequireWildcard(require("node:fs"));
17
- var OS = _interopRequireWildcard(require("node:os"));
18
- var Path = _interopRequireWildcard(require("node:path"));
19
- var _error = require("./error.js");
20
- function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
21
- const handleBadArgument = method => cause => new Error.BadArgument({
22
- module: "FileSystem",
23
- method,
24
- cause
25
- });
26
- // == access
27
- const access = /*#__PURE__*/(() => {
28
- const nodeAccess = /*#__PURE__*/(0, _Effectify.effectify)(NFS.access, /*#__PURE__*/(0, _error.handleErrnoException)("FileSystem", "access"), /*#__PURE__*/handleBadArgument("access"));
29
- return (path, options) => {
30
- let mode = NFS.constants.F_OK;
31
- if (options?.readable) {
32
- mode |= NFS.constants.R_OK;
33
- }
34
- if (options?.writable) {
35
- mode |= NFS.constants.W_OK;
36
- }
37
- return nodeAccess(path, mode);
38
- };
39
- })();
40
- // == copy
41
- const copy = /*#__PURE__*/(() => {
42
- const nodeCp = /*#__PURE__*/(0, _Effectify.effectify)(NFS.cp, /*#__PURE__*/(0, _error.handleErrnoException)("FileSystem", "copy"), /*#__PURE__*/handleBadArgument("copy"));
43
- return (fromPath, toPath, options) => nodeCp(fromPath, toPath, {
44
- force: options?.overwrite ?? false,
45
- preserveTimestamps: options?.preserveTimestamps ?? false,
46
- recursive: true
47
- });
48
- })();
49
- // == copyFile
50
- const copyFile = /*#__PURE__*/(() => {
51
- const nodeCopyFile = /*#__PURE__*/(0, _Effectify.effectify)(NFS.copyFile, /*#__PURE__*/(0, _error.handleErrnoException)("FileSystem", "copyFile"), /*#__PURE__*/handleBadArgument("copyFile"));
52
- return (fromPath, toPath) => nodeCopyFile(fromPath, toPath);
53
- })();
54
- // == chmod
55
- const chmod = /*#__PURE__*/(() => {
56
- const nodeChmod = /*#__PURE__*/(0, _Effectify.effectify)(NFS.chmod, /*#__PURE__*/(0, _error.handleErrnoException)("FileSystem", "chmod"), /*#__PURE__*/handleBadArgument("chmod"));
57
- return (path, mode) => nodeChmod(path, mode);
58
- })();
59
- // == chown
60
- const chown = /*#__PURE__*/(() => {
61
- const nodeChown = /*#__PURE__*/(0, _Effectify.effectify)(NFS.chown, /*#__PURE__*/(0, _error.handleErrnoException)("FileSystem", "chown"), /*#__PURE__*/handleBadArgument("chown"));
62
- return (path, uid, gid) => nodeChown(path, uid, gid);
63
- })();
64
- // == link
65
- const link = /*#__PURE__*/(() => {
66
- const nodeLink = /*#__PURE__*/(0, _Effectify.effectify)(NFS.link, /*#__PURE__*/(0, _error.handleErrnoException)("FileSystem", "link"), /*#__PURE__*/handleBadArgument("link"));
67
- return (existingPath, newPath) => nodeLink(existingPath, newPath);
68
- })();
69
- // == makeDirectory
70
- const makeDirectory = /*#__PURE__*/(() => {
71
- const nodeMkdir = /*#__PURE__*/(0, _Effectify.effectify)(NFS.mkdir, /*#__PURE__*/(0, _error.handleErrnoException)("FileSystem", "makeDirectory"), /*#__PURE__*/handleBadArgument("makeDirectory"));
72
- return (path, options) => nodeMkdir(path, {
73
- recursive: options?.recursive ?? false,
74
- mode: options?.mode
75
- });
76
- })();
77
- // == makeTempDirectory
78
- const makeTempDirectoryFactory = method => {
79
- const nodeMkdtemp = (0, _Effectify.effectify)(NFS.mkdtemp, (0, _error.handleErrnoException)("FileSystem", method), handleBadArgument(method));
80
- return options => Effect.suspend(() => {
81
- const prefix = options?.prefix ?? "";
82
- const directory = typeof options?.directory === "string" ? Path.join(options.directory, ".") : OS.tmpdir();
83
- return nodeMkdtemp(prefix ? Path.join(directory, prefix) : directory + "/");
84
- });
85
- };
86
- const makeTempDirectory = /*#__PURE__*/makeTempDirectoryFactory("makeTempDirectory");
87
- // == remove
88
- const removeFactory = method => {
89
- const nodeRm = (0, _Effectify.effectify)(NFS.rm, (0, _error.handleErrnoException)("FileSystem", method), handleBadArgument(method));
90
- return (path, options) => nodeRm(path, {
91
- recursive: options?.recursive ?? false,
92
- force: options?.force ?? false
93
- });
94
- };
95
- const remove = /*#__PURE__*/removeFactory("remove");
96
- // == makeTempDirectoryScoped
97
- const makeTempDirectoryScoped = /*#__PURE__*/(() => {
98
- const makeDirectory = /*#__PURE__*/makeTempDirectoryFactory("makeTempDirectoryScoped");
99
- const removeDirectory = /*#__PURE__*/removeFactory("makeTempDirectoryScoped");
100
- return options => Effect.acquireRelease(makeDirectory(options), directory => Effect.orDie(removeDirectory(directory, {
101
- recursive: true
102
- })));
103
- })();
104
- // == open
105
- const openFactory = method => {
106
- const nodeOpen = (0, _Effectify.effectify)(NFS.open, (0, _error.handleErrnoException)("FileSystem", method), handleBadArgument(method));
107
- const nodeClose = (0, _Effectify.effectify)(NFS.close, (0, _error.handleErrnoException)("FileSystem", method), handleBadArgument(method));
108
- return (path, options) => (0, _Function.pipe)(Effect.acquireRelease(nodeOpen(path, options?.flag ?? "r", options?.mode), fd => Effect.orDie(nodeClose(fd))), Effect.map(fd => makeFile(FileSystem.FileDescriptor(fd), options?.flag?.startsWith("a") ?? false)));
109
- };
110
- const open = /*#__PURE__*/openFactory("open");
111
- const makeFile = /*#__PURE__*/(() => {
112
- const nodeReadFactory = method => (0, _Effectify.effectify)(NFS.read, (0, _error.handleErrnoException)("FileSystem", method), handleBadArgument(method));
113
- const nodeRead = /*#__PURE__*/nodeReadFactory("read");
114
- const nodeReadAlloc = /*#__PURE__*/nodeReadFactory("readAlloc");
115
- const nodeStat = /*#__PURE__*/(0, _Effectify.effectify)(NFS.fstat, /*#__PURE__*/(0, _error.handleErrnoException)("FileSystem", "stat"), /*#__PURE__*/handleBadArgument("stat"));
116
- const nodeTruncate = /*#__PURE__*/(0, _Effectify.effectify)(NFS.ftruncate, /*#__PURE__*/(0, _error.handleErrnoException)("FileSystem", "truncate"), /*#__PURE__*/handleBadArgument("truncate"));
117
- const nodeSync = /*#__PURE__*/(0, _Effectify.effectify)(NFS.fsync, /*#__PURE__*/(0, _error.handleErrnoException)("FileSystem", "sync"), /*#__PURE__*/handleBadArgument("sync"));
118
- const nodeWriteFactory = method => (0, _Effectify.effectify)(NFS.write, (0, _error.handleErrnoException)("FileSystem", method), handleBadArgument(method));
119
- const nodeWrite = /*#__PURE__*/nodeWriteFactory("write");
120
- const nodeWriteAll = /*#__PURE__*/nodeWriteFactory("writeAll");
121
- class FileImpl {
122
- fd;
123
- append;
124
- [FileSystem.FileTypeId];
125
- semaphore = /*#__PURE__*/Effect.unsafeMakeSemaphore(1);
126
- position = 0n;
127
- constructor(fd, append) {
128
- this.fd = fd;
129
- this.append = append;
130
- this[FileSystem.FileTypeId] = FileSystem.FileTypeId;
131
- }
132
- get stat() {
133
- return Effect.map(nodeStat(this.fd), makeFileInfo);
134
- }
135
- get sync() {
136
- return nodeSync(this.fd);
137
- }
138
- seek(offset, from) {
139
- const offsetSize = FileSystem.Size(offset);
140
- return this.semaphore.withPermits(1)(Effect.sync(() => {
141
- if (from === "start") {
142
- this.position = offsetSize;
143
- } else if (from === "current") {
144
- this.position = this.position + offsetSize;
145
- }
146
- return this.position;
147
- }));
148
- }
149
- read(buffer) {
150
- return this.semaphore.withPermits(1)(Effect.map(Effect.suspend(() => nodeRead(this.fd, {
151
- buffer,
152
- position: this.position
153
- })), bytesRead => {
154
- const sizeRead = FileSystem.Size(bytesRead);
155
- this.position = this.position + sizeRead;
156
- return sizeRead;
157
- }));
158
- }
159
- readAlloc(size) {
160
- const sizeNumber = Number(size);
161
- return this.semaphore.withPermits(1)(Effect.flatMap(Effect.sync(() => Buffer.allocUnsafeSlow(sizeNumber)), buffer => Effect.map(nodeReadAlloc(this.fd, {
162
- buffer,
163
- position: this.position
164
- }), bytesRead => {
165
- if (bytesRead === 0) {
166
- return Option.none();
167
- }
168
- this.position = this.position + BigInt(bytesRead);
169
- if (bytesRead === sizeNumber) {
170
- return Option.some(buffer);
171
- }
172
- const dst = Buffer.allocUnsafeSlow(bytesRead);
173
- buffer.copy(dst, 0, 0, bytesRead);
174
- return Option.some(dst);
175
- })));
176
- }
177
- truncate(length) {
178
- return this.semaphore.withPermits(1)(Effect.map(nodeTruncate(this.fd, length ? Number(length) : undefined), () => {
179
- if (!this.append) {
180
- const len = BigInt(length ?? 0);
181
- if (this.position > len) {
182
- this.position = len;
183
- }
184
- }
185
- }));
186
- }
187
- write(buffer) {
188
- return this.semaphore.withPermits(1)(Effect.map(Effect.suspend(() => nodeWrite(this.fd, buffer, undefined, undefined, this.append ? undefined : Number(this.position))), bytesWritten => {
189
- const sizeWritten = FileSystem.Size(bytesWritten);
190
- if (!this.append) {
191
- this.position = this.position + sizeWritten;
192
- }
193
- return sizeWritten;
194
- }));
195
- }
196
- writeAllChunk(buffer) {
197
- return Effect.flatMap(Effect.suspend(() => nodeWriteAll(this.fd, buffer, undefined, undefined, this.append ? undefined : Number(this.position))), bytesWritten => {
198
- if (bytesWritten === 0) {
199
- return Effect.fail(new Error.SystemError({
200
- module: "FileSystem",
201
- method: "writeAll",
202
- reason: "WriteZero",
203
- pathOrDescriptor: this.fd,
204
- description: "write returned 0 bytes written"
205
- }));
206
- }
207
- if (!this.append) {
208
- this.position = this.position + BigInt(bytesWritten);
209
- }
210
- return bytesWritten < buffer.length ? this.writeAllChunk(buffer.subarray(bytesWritten)) : Effect.void;
211
- });
212
- }
213
- writeAll(buffer) {
214
- return this.semaphore.withPermits(1)(this.writeAllChunk(buffer));
215
- }
216
- }
217
- return (fd, append) => new FileImpl(fd, append);
218
- })();
219
- // == makeTempFile
220
- const makeTempFileFactory = method => {
221
- const makeDirectory = makeTempDirectoryFactory(method);
222
- const open = openFactory(method);
223
- const randomHexString = bytes => Effect.sync(() => Crypto.randomBytes(bytes).toString("hex"));
224
- return options => (0, _Function.pipe)(Effect.zip(makeDirectory(options), randomHexString(6)), Effect.map(([directory, random]) => Path.join(directory, random + (options?.suffix ?? ""))), Effect.tap(path => Effect.scoped(open(path, {
225
- flag: "w+"
226
- }))));
227
- };
228
- const makeTempFile = /*#__PURE__*/makeTempFileFactory("makeTempFile");
229
- // == makeTempFileScoped
230
- const makeTempFileScoped = /*#__PURE__*/(() => {
231
- const makeFile = /*#__PURE__*/makeTempFileFactory("makeTempFileScoped");
232
- const removeDirectory = /*#__PURE__*/removeFactory("makeTempFileScoped");
233
- return options => Effect.acquireRelease(makeFile(options), file => Effect.orDie(removeDirectory(Path.dirname(file), {
234
- recursive: true
235
- })));
236
- })();
237
- // == readDirectory
238
- const readDirectory = (path, options) => Effect.tryPromise({
239
- try: () => NFS.promises.readdir(path, options),
240
- catch: err => (0, _error.handleErrnoException)("FileSystem", "readDirectory")(err, [path])
241
- });
242
- // == readFile
243
- const readFile = path => Effect.async((resume, signal) => {
244
- try {
245
- NFS.readFile(path, {
246
- signal
247
- }, (err, data) => {
248
- if (err) {
249
- resume(Effect.fail((0, _error.handleErrnoException)("FileSystem", "readFile")(err, [path])));
250
- } else {
251
- resume(Effect.succeed(data));
252
- }
253
- });
254
- } catch (err) {
255
- resume(Effect.fail(handleBadArgument("readFile")(err)));
256
- }
257
- });
258
- // == readLink
259
- const readLink = /*#__PURE__*/(() => {
260
- const nodeReadLink = /*#__PURE__*/(0, _Effectify.effectify)(NFS.readlink, /*#__PURE__*/(0, _error.handleErrnoException)("FileSystem", "readLink"), /*#__PURE__*/handleBadArgument("readLink"));
261
- return path => nodeReadLink(path);
262
- })();
263
- // == realPath
264
- const realPath = /*#__PURE__*/(() => {
265
- const nodeRealPath = /*#__PURE__*/(0, _Effectify.effectify)(NFS.realpath, /*#__PURE__*/(0, _error.handleErrnoException)("FileSystem", "realPath"), /*#__PURE__*/handleBadArgument("realPath"));
266
- return path => nodeRealPath(path);
267
- })();
268
- // == rename
269
- const rename = /*#__PURE__*/(() => {
270
- const nodeRename = /*#__PURE__*/(0, _Effectify.effectify)(NFS.rename, /*#__PURE__*/(0, _error.handleErrnoException)("FileSystem", "rename"), /*#__PURE__*/handleBadArgument("rename"));
271
- return (oldPath, newPath) => nodeRename(oldPath, newPath);
272
- })();
273
- // == stat
274
- const makeFileInfo = stat => ({
275
- type: stat.isFile() ? "File" : stat.isDirectory() ? "Directory" : stat.isSymbolicLink() ? "SymbolicLink" : stat.isBlockDevice() ? "BlockDevice" : stat.isCharacterDevice() ? "CharacterDevice" : stat.isFIFO() ? "FIFO" : stat.isSocket() ? "Socket" : "Unknown",
276
- mtime: Option.fromNullable(stat.mtime),
277
- atime: Option.fromNullable(stat.atime),
278
- birthtime: Option.fromNullable(stat.birthtime),
279
- dev: stat.dev,
280
- rdev: Option.fromNullable(stat.rdev),
281
- ino: Option.fromNullable(stat.ino),
282
- mode: stat.mode,
283
- nlink: Option.fromNullable(stat.nlink),
284
- uid: Option.fromNullable(stat.uid),
285
- gid: Option.fromNullable(stat.gid),
286
- size: FileSystem.Size(stat.size),
287
- blksize: Option.map(Option.fromNullable(stat.blksize), FileSystem.Size),
288
- blocks: Option.fromNullable(stat.blocks)
289
- });
290
- const stat = /*#__PURE__*/(() => {
291
- const nodeStat = /*#__PURE__*/(0, _Effectify.effectify)(NFS.stat, /*#__PURE__*/(0, _error.handleErrnoException)("FileSystem", "stat"), /*#__PURE__*/handleBadArgument("stat"));
292
- return path => Effect.map(nodeStat(path), makeFileInfo);
293
- })();
294
- // == symlink
295
- const symlink = /*#__PURE__*/(() => {
296
- const nodeSymlink = /*#__PURE__*/(0, _Effectify.effectify)(NFS.symlink, /*#__PURE__*/(0, _error.handleErrnoException)("FileSystem", "symlink"), /*#__PURE__*/handleBadArgument("symlink"));
297
- return (target, path) => nodeSymlink(target, path);
298
- })();
299
- // == truncate
300
- const truncate = /*#__PURE__*/(() => {
301
- const nodeTruncate = /*#__PURE__*/(0, _Effectify.effectify)(NFS.truncate, /*#__PURE__*/(0, _error.handleErrnoException)("FileSystem", "truncate"), /*#__PURE__*/handleBadArgument("truncate"));
302
- return (path, length) => nodeTruncate(path, length !== undefined ? Number(length) : undefined);
303
- })();
304
- // == utimes
305
- const utimes = /*#__PURE__*/(() => {
306
- const nodeUtimes = /*#__PURE__*/(0, _Effectify.effectify)(NFS.utimes, /*#__PURE__*/(0, _error.handleErrnoException)("FileSystem", "utime"), /*#__PURE__*/handleBadArgument("utime"));
307
- return (path, atime, mtime) => nodeUtimes(path, atime, mtime);
308
- })();
309
- // == watch
310
- const watchNode = (path, options) => Stream.asyncScoped(emit => Effect.acquireRelease(Effect.sync(() => {
311
- const watcher = NFS.watch(path, {
312
- recursive: options?.recursive
313
- }, (event, path) => {
314
- if (!path) return;
315
- switch (event) {
316
- case "rename":
317
- {
318
- emit.fromEffect(Effect.matchEffect(stat(path), {
319
- onSuccess: _ => Effect.succeed(FileSystem.WatchEventCreate({
320
- path
321
- })),
322
- onFailure: err => err._tag === "SystemError" && err.reason === "NotFound" ? Effect.succeed(FileSystem.WatchEventRemove({
323
- path
324
- })) : Effect.fail(err)
325
- }));
326
- return;
327
- }
328
- case "change":
329
- {
330
- emit.single(FileSystem.WatchEventUpdate({
331
- path
332
- }));
333
- return;
334
- }
335
- }
336
- });
337
- watcher.on("error", error => {
338
- emit.fail(new Error.SystemError({
339
- module: "FileSystem",
340
- reason: "Unknown",
341
- method: "watch",
342
- pathOrDescriptor: path,
343
- cause: error
344
- }));
345
- });
346
- watcher.on("close", () => {
347
- emit.end();
348
- });
349
- return watcher;
350
- }), watcher => Effect.sync(() => watcher.close())));
351
- const watch = (backend, path, options) => stat(path).pipe(Effect.map(stat => backend.pipe(Option.flatMap(_ => _.register(path, stat, options)), Option.getOrElse(() => watchNode(path, options)))), Stream.unwrap);
352
- // == writeFile
353
- const writeFile = (path, data, options) => Effect.async((resume, signal) => {
354
- try {
355
- NFS.writeFile(path, data, {
356
- signal,
357
- flag: options?.flag,
358
- mode: options?.mode
359
- }, err => {
360
- if (err) {
361
- resume(Effect.fail((0, _error.handleErrnoException)("FileSystem", "writeFile")(err, [path])));
362
- } else {
363
- resume(Effect.void);
364
- }
365
- });
366
- } catch (err) {
367
- resume(Effect.fail(handleBadArgument("writeFile")(err)));
368
- }
369
- });
370
- const makeFileSystem = /*#__PURE__*/Effect.map(/*#__PURE__*/Effect.serviceOption(FileSystem.WatchBackend), backend => FileSystem.make({
371
- access,
372
- chmod,
373
- chown,
374
- copy,
375
- copyFile,
376
- link,
377
- makeDirectory,
378
- makeTempDirectory,
379
- makeTempDirectoryScoped,
380
- makeTempFile,
381
- makeTempFileScoped,
382
- open,
383
- readDirectory,
384
- readFile,
385
- readLink,
386
- realPath,
387
- remove,
388
- rename,
389
- stat,
390
- symlink,
391
- truncate,
392
- utimes,
393
- watch(path, options) {
394
- return watch(backend, path, options);
395
- },
396
- writeFile
397
- }));
398
- /** @internal */
399
- const layer = exports.layer = /*#__PURE__*/Layer.effect(FileSystem.FileSystem, makeFileSystem);
400
- //# sourceMappingURL=fileSystem.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"fileSystem.js","names":["_Effectify","require","Error","_interopRequireWildcard","FileSystem","Effect","_Function","Layer","Option","Stream","Crypto","NFS","OS","Path","_error","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","handleBadArgument","method","cause","BadArgument","module","access","nodeAccess","effectify","handleErrnoException","path","options","mode","constants","F_OK","readable","R_OK","writable","W_OK","copy","nodeCp","cp","fromPath","toPath","force","overwrite","preserveTimestamps","recursive","copyFile","nodeCopyFile","chmod","nodeChmod","chown","nodeChown","uid","gid","link","nodeLink","existingPath","newPath","makeDirectory","nodeMkdir","mkdir","makeTempDirectoryFactory","nodeMkdtemp","mkdtemp","suspend","prefix","directory","join","tmpdir","makeTempDirectory","removeFactory","nodeRm","rm","remove","makeTempDirectoryScoped","removeDirectory","acquireRelease","orDie","openFactory","nodeOpen","open","nodeClose","close","pipe","flag","fd","map","makeFile","FileDescriptor","startsWith","nodeReadFactory","read","nodeRead","nodeReadAlloc","nodeStat","fstat","nodeTruncate","ftruncate","nodeSync","fsync","nodeWriteFactory","write","nodeWrite","nodeWriteAll","FileImpl","append","FileTypeId","semaphore","unsafeMakeSemaphore","position","constructor","stat","makeFileInfo","sync","seek","offset","from","offsetSize","Size","withPermits","buffer","bytesRead","sizeRead","readAlloc","size","sizeNumber","Number","flatMap","Buffer","allocUnsafeSlow","none","BigInt","some","dst","truncate","length","undefined","len","bytesWritten","sizeWritten","writeAllChunk","fail","SystemError","reason","pathOrDescriptor","description","subarray","void","writeAll","makeTempFileFactory","randomHexString","bytes","randomBytes","toString","zip","random","suffix","tap","scoped","makeTempFile","makeTempFileScoped","file","dirname","readDirectory","tryPromise","try","promises","readdir","catch","err","readFile","async","resume","signal","data","succeed","readLink","nodeReadLink","readlink","realPath","nodeRealPath","realpath","rename","nodeRename","oldPath","type","isFile","isDirectory","isSymbolicLink","isBlockDevice","isCharacterDevice","isFIFO","isSocket","mtime","fromNullable","atime","birthtime","dev","rdev","ino","nlink","blksize","blocks","symlink","nodeSymlink","target","utimes","nodeUtimes","watchNode","asyncScoped","emit","watcher","watch","event","fromEffect","matchEffect","onSuccess","_","WatchEventCreate","onFailure","_tag","WatchEventRemove","single","WatchEventUpdate","on","error","end","backend","register","getOrElse","unwrap","writeFile","makeFileSystem","serviceOption","WatchBackend","make","layer","exports","effect"],"sources":["../../../src/internal/fileSystem.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -1,147 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.stream = exports.persisted = exports.fileToReadable = void 0;
7
- var Multipart = _interopRequireWildcard(require("@effect/platform/Multipart"));
8
- var Effect = _interopRequireWildcard(require("effect/Effect"));
9
- var _Function = require("effect/Function");
10
- var Inspectable = _interopRequireWildcard(require("effect/Inspectable"));
11
- var Stream = _interopRequireWildcard(require("effect/Stream"));
12
- var _multipasta = require("multipasta");
13
- var MP = _interopRequireWildcard(require("multipasta/node"));
14
- var NFS = _interopRequireWildcard(require("node:fs"));
15
- var NodeStreamP = _interopRequireWildcard(require("node:stream/promises"));
16
- var NodeStream = _interopRequireWildcard(require("./stream.js"));
17
- function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
18
- /** @internal */
19
- const stream = (source, headers) => (0, _Function.pipe)(Multipart.makeConfig(headers), Effect.map(config => NodeStream.fromReadable(() => {
20
- const parser = MP.make(config);
21
- source.pipe(parser);
22
- return parser;
23
- }, error => convertError(error))), Stream.unwrap, Stream.map(convertPart));
24
- /** @internal */
25
- exports.stream = stream;
26
- const persisted = (source, headers) => Multipart.toPersisted(stream(source, headers), (path, file) => Effect.tryPromise({
27
- try: signal => NodeStreamP.pipeline(file.file, NFS.createWriteStream(path), {
28
- signal
29
- }),
30
- catch: cause => new Multipart.MultipartError({
31
- reason: "InternalError",
32
- cause
33
- })
34
- }));
35
- exports.persisted = persisted;
36
- const convertPart = part => part._tag === "Field" ? new FieldImpl(part.info, part.value) : new FileImpl(part);
37
- class PartBase extends Inspectable.Class {
38
- [Multipart.TypeId];
39
- constructor() {
40
- super();
41
- this[Multipart.TypeId] = Multipart.TypeId;
42
- }
43
- }
44
- class FieldImpl extends PartBase {
45
- _tag = "Field";
46
- key;
47
- contentType;
48
- value;
49
- constructor(info, value) {
50
- super();
51
- this.key = info.name;
52
- this.contentType = info.contentType;
53
- this.value = (0, _multipasta.decodeField)(info, value);
54
- }
55
- toJSON() {
56
- return {
57
- _id: "@effect/platform/Multipart/Part",
58
- _tag: "Field",
59
- key: this.key,
60
- value: this.value,
61
- contentType: this.contentType
62
- };
63
- }
64
- }
65
- class FileImpl extends PartBase {
66
- file;
67
- _tag = "File";
68
- key;
69
- name;
70
- contentType;
71
- content;
72
- contentEffect;
73
- constructor(file) {
74
- super();
75
- this.file = file;
76
- this.key = file.info.name;
77
- this.name = file.filename ?? file.info.name;
78
- this.contentType = file.info.contentType;
79
- this.content = NodeStream.fromReadable(() => file, cause => new Multipart.MultipartError({
80
- reason: "InternalError",
81
- cause
82
- }));
83
- this.contentEffect = NodeStream.toUint8Array(() => file, {
84
- onFailure: cause => new Multipart.MultipartError({
85
- reason: "InternalError",
86
- cause
87
- })
88
- });
89
- }
90
- toJSON() {
91
- return {
92
- _id: "@effect/platform/Multipart/Part",
93
- _tag: "File",
94
- key: this.key,
95
- name: this.name,
96
- contentType: this.contentType
97
- };
98
- }
99
- }
100
- /** @internal */
101
- const fileToReadable = file => file.file;
102
- exports.fileToReadable = fileToReadable;
103
- function convertError(cause) {
104
- switch (cause._tag) {
105
- case "ReachedLimit":
106
- {
107
- switch (cause.limit) {
108
- case "MaxParts":
109
- {
110
- return new Multipart.MultipartError({
111
- reason: "TooManyParts",
112
- cause
113
- });
114
- }
115
- case "MaxFieldSize":
116
- {
117
- return new Multipart.MultipartError({
118
- reason: "FieldTooLarge",
119
- cause
120
- });
121
- }
122
- case "MaxPartSize":
123
- {
124
- return new Multipart.MultipartError({
125
- reason: "FileTooLarge",
126
- cause
127
- });
128
- }
129
- case "MaxTotalSize":
130
- {
131
- return new Multipart.MultipartError({
132
- reason: "BodyTooLarge",
133
- cause
134
- });
135
- }
136
- }
137
- }
138
- default:
139
- {
140
- return new Multipart.MultipartError({
141
- reason: "Parse",
142
- cause
143
- });
144
- }
145
- }
146
- }
147
- //# sourceMappingURL=multipart.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"multipart.js","names":["Multipart","_interopRequireWildcard","require","Effect","_Function","Inspectable","Stream","_multipasta","MP","NFS","NodeStreamP","NodeStream","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","stream","source","headers","pipe","makeConfig","map","config","fromReadable","parser","make","error","convertError","unwrap","convertPart","exports","persisted","toPersisted","path","file","tryPromise","try","signal","pipeline","createWriteStream","catch","cause","MultipartError","reason","part","_tag","FieldImpl","info","value","FileImpl","PartBase","Class","TypeId","constructor","key","contentType","name","decodeField","toJSON","_id","content","contentEffect","filename","toUint8Array","onFailure","fileToReadable","limit"],"sources":["../../../src/internal/multipart.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -1,53 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.layerWin32 = exports.layerPosix = exports.layer = void 0;
7
- var _Error = require("@effect/platform/Error");
8
- var _Path = require("@effect/platform/Path");
9
- var Effect = _interopRequireWildcard(require("effect/Effect"));
10
- var Layer = _interopRequireWildcard(require("effect/Layer"));
11
- var NodePath = _interopRequireWildcard(require("node:path"));
12
- var NodeUrl = _interopRequireWildcard(require("node:url"));
13
- function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
14
- const fromFileUrl = url => Effect.try({
15
- try: () => NodeUrl.fileURLToPath(url),
16
- catch: error => new _Error.BadArgument({
17
- module: "Path",
18
- method: "fromFileUrl",
19
- description: `Invalid file URL: ${url}`,
20
- cause: error
21
- })
22
- });
23
- const toFileUrl = path => Effect.try({
24
- try: () => NodeUrl.pathToFileURL(path),
25
- catch: error => new _Error.BadArgument({
26
- module: "Path",
27
- method: "toFileUrl",
28
- description: `Invalid path: ${path}`,
29
- cause: error
30
- })
31
- });
32
- /** @internal */
33
- const layerPosix = exports.layerPosix = /*#__PURE__*/Layer.succeed(_Path.Path, /*#__PURE__*/_Path.Path.of({
34
- [_Path.TypeId]: _Path.TypeId,
35
- ...NodePath.posix,
36
- fromFileUrl,
37
- toFileUrl
38
- }));
39
- /** @internal */
40
- const layerWin32 = exports.layerWin32 = /*#__PURE__*/Layer.succeed(_Path.Path, /*#__PURE__*/_Path.Path.of({
41
- [_Path.TypeId]: _Path.TypeId,
42
- ...NodePath.win32,
43
- fromFileUrl,
44
- toFileUrl
45
- }));
46
- /** @internal */
47
- const layer = exports.layer = /*#__PURE__*/Layer.succeed(_Path.Path, /*#__PURE__*/_Path.Path.of({
48
- [_Path.TypeId]: _Path.TypeId,
49
- ...NodePath,
50
- fromFileUrl,
51
- toFileUrl
52
- }));
53
- //# sourceMappingURL=path.js.map