@effect/platform-node 0.0.0 → 0.1.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/Console.d.ts CHANGED
@@ -1,15 +1,5 @@
1
1
  /**
2
2
  * @since 1.0.0
3
3
  */
4
- export {
5
- /**
6
- * @since 1.0.0
7
- * @category tag
8
- */
9
- Console,
10
- /**
11
- * @since 1.0.0
12
- * @category layer
13
- */
14
- layer } from "@effect/platform/Console";
4
+ export * from "@effect/platform/Console";
15
5
  //# sourceMappingURL=Console.d.ts.map
package/Console.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Console.d.ts","sourceRoot":"","sources":["./src/Console.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO;AACL;;;GAGG;AACH,OAAO;AACP;;;GAGG;AACH,KAAK,EACN,MAAM,0BAA0B,CAAA"}
1
+ {"version":3,"file":"Console.d.ts","sourceRoot":"","sources":["./src/Console.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,cAAc,0BAA0B,CAAA"}
package/Console.js CHANGED
@@ -3,17 +3,15 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- Object.defineProperty(exports, "Console", {
7
- enumerable: true,
8
- get: function () {
9
- return _Console.Console;
10
- }
11
- });
12
- Object.defineProperty(exports, "layer", {
13
- enumerable: true,
14
- get: function () {
15
- return _Console.layer;
16
- }
17
- });
18
6
  var _Console = /*#__PURE__*/require("@effect/platform/Console");
7
+ Object.keys(_Console).forEach(function (key) {
8
+ if (key === "default" || key === "__esModule") return;
9
+ if (key in exports && exports[key] === _Console[key]) return;
10
+ Object.defineProperty(exports, key, {
11
+ enumerable: true,
12
+ get: function () {
13
+ return _Console[key];
14
+ }
15
+ });
16
+ });
19
17
  //# sourceMappingURL=Console.js.map
package/Console.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Console.js","names":["_Console","require"],"sources":["./src/Console.ts"],"sourcesContent":[null],"mappings":";;;;;;;;;;;;;;;;;AAIA,IAAAA,QAAA,gBAAAC,OAAA"}
1
+ {"version":3,"file":"Console.js","names":["_Console","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get"],"sources":["./src/Console.ts"],"sourcesContent":[null],"mappings":";;;;;AAGA,IAAAA,QAAA,gBAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,QAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,QAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAT,QAAA,CAAAK,GAAA;IAAA;EAAA;AAAA"}
package/Path.d.ts ADDED
@@ -0,0 +1,27 @@
1
+ /**
2
+ * @since 1.0.0
3
+ */
4
+ import type { Layer } from "@effect/io/Layer";
5
+ import type { Path } from "@effect/platform/Path";
6
+ export {
7
+ /**
8
+ * @since 1.0.0
9
+ * @category tag
10
+ */
11
+ Path } from "@effect/platform/Path";
12
+ /**
13
+ * @since 1.0.0
14
+ * @category layer
15
+ */
16
+ export declare const layer: Layer<never, never, Path>;
17
+ /**
18
+ * @since 1.0.0
19
+ * @category layer
20
+ */
21
+ export declare const layerPosix: Layer<never, never, Path>;
22
+ /**
23
+ * @since 1.0.0
24
+ * @category layer
25
+ */
26
+ export declare const layerWin32: Layer<never, never, Path>;
27
+ //# sourceMappingURL=Path.d.ts.map
package/Path.d.ts.map ADDED
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Path.d.ts","sourceRoot":"","sources":["./src/Path.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAA;AAE7C,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,uBAAuB,CAAA;AAEjD,OAAO;AACL;;;GAGG;AACH,IAAI,EACL,MAAM,uBAAuB,CAAA;AAE9B;;;GAGG;AACH,eAAO,MAAM,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,CAAkB,CAAA;AAE9D;;;GAGG;AACH,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,CAAuB,CAAA;AAExE;;;GAGG;AACH,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,CAAuB,CAAA"}
package/Path.js ADDED
@@ -0,0 +1,39 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ Object.defineProperty(exports, "Path", {
7
+ enumerable: true,
8
+ get: function () {
9
+ return _Path.Path;
10
+ }
11
+ });
12
+ exports.layerWin32 = exports.layerPosix = exports.layer = void 0;
13
+ var internal = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/platform-node/internal/path"));
14
+ var _Path = /*#__PURE__*/require("@effect/platform/Path");
15
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
16
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
17
+ /**
18
+ * @since 1.0.0
19
+ */
20
+
21
+ /**
22
+ * @since 1.0.0
23
+ * @category layer
24
+ */
25
+ const layer = internal.layer;
26
+ /**
27
+ * @since 1.0.0
28
+ * @category layer
29
+ */
30
+ exports.layer = layer;
31
+ const layerPosix = internal.layerPosix;
32
+ /**
33
+ * @since 1.0.0
34
+ * @category layer
35
+ */
36
+ exports.layerPosix = layerPosix;
37
+ const layerWin32 = internal.layerWin32;
38
+ exports.layerWin32 = layerWin32;
39
+ //# sourceMappingURL=Path.js.map
package/Path.js.map ADDED
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Path.js","names":["internal","_interopRequireWildcard","require","_Path","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","layer","exports","layerPosix","layerWin32"],"sources":["./src/Path.ts"],"sourcesContent":[null],"mappings":";;;;;;;;;;;;AAKA,IAAAA,QAAA,gBAAAC,uBAAA,eAAAC,OAAA;AAGA,IAAAC,KAAA,gBAAAD,OAAA;AAM8B,SAAAE,yBAAAC,WAAA,eAAAC,OAAA,kCAAAC,iBAAA,OAAAD,OAAA,QAAAE,gBAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,WAAA,WAAAA,WAAA,GAAAG,gBAAA,GAAAD,iBAAA,KAAAF,WAAA;AAAA,SAAAJ,wBAAAQ,GAAA,EAAAJ,WAAA,SAAAA,WAAA,IAAAI,GAAA,IAAAA,GAAA,CAAAC,UAAA,WAAAD,GAAA,QAAAA,GAAA,oBAAAA,GAAA,wBAAAA,GAAA,4BAAAE,OAAA,EAAAF,GAAA,UAAAG,KAAA,GAAAR,wBAAA,CAAAC,WAAA,OAAAO,KAAA,IAAAA,KAAA,CAAAC,GAAA,CAAAJ,GAAA,YAAAG,KAAA,CAAAE,GAAA,CAAAL,GAAA,SAAAM,MAAA,WAAAC,qBAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,GAAA,IAAAX,GAAA,QAAAW,GAAA,kBAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAd,GAAA,EAAAW,GAAA,SAAAI,IAAA,GAAAR,qBAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAV,GAAA,EAAAW,GAAA,cAAAI,IAAA,KAAAA,IAAA,CAAAV,GAAA,IAAAU,IAAA,CAAAC,GAAA,KAAAR,MAAA,CAAAC,cAAA,CAAAH,MAAA,EAAAK,GAAA,EAAAI,IAAA,YAAAT,MAAA,CAAAK,GAAA,IAAAX,GAAA,CAAAW,GAAA,SAAAL,MAAA,CAAAJ,OAAA,GAAAF,GAAA,MAAAG,KAAA,IAAAA,KAAA,CAAAa,GAAA,CAAAhB,GAAA,EAAAM,MAAA,YAAAA,MAAA;AAd9B;;;;AAgBA;;;;AAIO,MAAMW,KAAK,GAA8B1B,QAAQ,CAAC0B,KAAK;AAE9D;;;;AAAAC,OAAA,CAAAD,KAAA,GAAAA,KAAA;AAIO,MAAME,UAAU,GAA8B5B,QAAQ,CAAC4B,UAAU;AAExE;;;;AAAAD,OAAA,CAAAC,UAAA,GAAAA,UAAA;AAIO,MAAMC,UAAU,GAA8B7B,QAAQ,CAAC6B,UAAU;AAAAF,OAAA,CAAAE,UAAA,GAAAA,UAAA"}
@@ -4,13 +4,13 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.layer = void 0;
7
+ var _Function = /*#__PURE__*/require("@effect/data/Function");
7
8
  var Option = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/data/Option"));
8
9
  var Effect = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/io/Effect"));
9
10
  var Layer = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/io/Layer"));
10
11
  var _Effectify = /*#__PURE__*/require("@effect/platform/Effectify");
11
12
  var Error = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/platform/Error"));
12
13
  var FileSystem = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/platform/FileSystem"));
13
- var File = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/platform/FileSystem/File"));
14
14
  var Crypto = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("node:crypto"));
15
15
  var NFS = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("node:fs"));
16
16
  var OS = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("node:os"));
@@ -47,7 +47,7 @@ const handleErrnoException = method => (err, [path]) => {
47
47
  reason,
48
48
  module: "FileSystem",
49
49
  method,
50
- pathOrDescriptor: path.toString(),
50
+ pathOrDescriptor: path,
51
51
  syscall: err.syscall,
52
52
  message: err.message
53
53
  });
@@ -71,6 +71,15 @@ const access = /*#__PURE__*/(() => {
71
71
  return nodeAccess(path, mode);
72
72
  };
73
73
  })();
74
+ // == copy
75
+ const copy = /*#__PURE__*/(() => {
76
+ const nodeCp = /*#__PURE__*/(0, _Effectify.effectify)(NFS.cp, /*#__PURE__*/handleErrnoException("copy"), /*#__PURE__*/handleBadArgument("copy"));
77
+ return (fromPath, toPath, options) => nodeCp(fromPath, toPath, {
78
+ force: options?.overwrite ?? false,
79
+ preserveTimestamps: options?.preserveTimestamps ?? false,
80
+ recursive: true
81
+ });
82
+ })();
74
83
  // == copyFile
75
84
  const copyFile = /*#__PURE__*/(() => {
76
85
  const nodeCopyFile = /*#__PURE__*/(0, _Effectify.effectify)(NFS.copyFile, /*#__PURE__*/handleErrnoException("copyFile"), /*#__PURE__*/handleBadArgument("copyFile"));
@@ -105,7 +114,7 @@ const makeTempDirectoryFactory = method => {
105
114
  return options => Effect.suspend(() => {
106
115
  const prefix = options?.prefix ?? "";
107
116
  const directory = typeof options?.directory === "string" ? Path.join(options.directory, ".") : OS.tmpdir();
108
- return nodeMkdtemp(prefix ? Path.join(directory, prefix) : directory);
117
+ return nodeMkdtemp(prefix ? Path.join(directory, prefix) : directory + "/");
109
118
  });
110
119
  };
111
120
  const makeTempDirectory = /*#__PURE__*/makeTempDirectoryFactory("makeTempDirectory");
@@ -125,20 +134,13 @@ const makeTempDirectoryScoped = /*#__PURE__*/(() => {
125
134
  recursive: true
126
135
  })));
127
136
  })();
128
- // == makeTempFile
129
- const makeTempFile = /*#__PURE__*/(() => {
130
- const makeDirectory = /*#__PURE__*/makeTempDirectoryFactory("makeTempFile");
131
- const randomHexString = bytes => Effect.sync(() => Crypto.randomBytes(bytes).toString("hex"));
132
- return options => Effect.flatMap(path => open(path, {
133
- flag: "w+"
134
- }))(Effect.map(([directory, random]) => Path.join(directory, random))(Effect.zip(makeDirectory(options), randomHexString(6))));
135
- })();
136
137
  // == open
137
- const open = /*#__PURE__*/(() => {
138
- const nodeOpen = /*#__PURE__*/(0, _Effectify.effectify)(NFS.open, /*#__PURE__*/handleErrnoException("open"), /*#__PURE__*/handleBadArgument("open"));
139
- const nodeClose = /*#__PURE__*/(0, _Effectify.effectify)(NFS.close, /*#__PURE__*/handleErrnoException("open"), /*#__PURE__*/handleBadArgument("open"));
140
- return (path, options) => Effect.map(fd => makeFile(File.Descriptor(fd)))(Effect.acquireRelease(nodeOpen(path, options?.flag ?? "r", options?.mode), fd => Effect.orDie(nodeClose(fd))));
141
- })();
138
+ const openFactory = method => {
139
+ const nodeOpen = (0, _Effectify.effectify)(NFS.open, handleErrnoException(method), handleBadArgument(method));
140
+ const nodeClose = (0, _Effectify.effectify)(NFS.close, handleErrnoException(method), handleBadArgument(method));
141
+ return (path, options) => Effect.map(fd => makeFile(FileSystem.FileDescriptor(fd)))(Effect.acquireRelease(nodeOpen(path, options?.flag ?? "r", options?.mode), fd => Effect.orDie(nodeClose(fd))));
142
+ };
143
+ const open = /*#__PURE__*/openFactory("open");
142
144
  const makeFile = /*#__PURE__*/(() => {
143
145
  var _a;
144
146
  const nodeReadFactory = method => (0, _Effectify.effectify)(NFS.read, handleErrnoException(method), handleBadArgument(method));
@@ -152,7 +154,7 @@ const makeFile = /*#__PURE__*/(() => {
152
154
  class FileImpl {
153
155
  constructor(fd) {
154
156
  this.fd = fd;
155
- this[_a] = File.FileTypeId;
157
+ this[_a] = _Function.identity;
156
158
  }
157
159
  get stat() {
158
160
  return Effect.map(nodeStat(this.fd), makeFileInfo);
@@ -189,16 +191,40 @@ const makeFile = /*#__PURE__*/(() => {
189
191
  }
190
192
  writeAll(buffer) {
191
193
  return Effect.flatMap(nodeWriteAll(this.fd, buffer), bytesWritten => {
192
- if (bytesWritten === buffer.length) {
193
- return Effect.unit();
194
+ if (bytesWritten === 0) {
195
+ return Effect.fail(Error.SystemError({
196
+ module: "FileSystem",
197
+ method: "writeAll",
198
+ reason: "WriteZero",
199
+ pathOrDescriptor: this.fd,
200
+ message: "write returned 0 bytes written"
201
+ }));
202
+ } else if (bytesWritten < buffer.length) {
203
+ return this.writeAll(buffer.subarray(bytesWritten));
194
204
  }
195
- return this.writeAll(buffer.subarray(bytesWritten));
205
+ return Effect.unit();
196
206
  });
197
207
  }
198
208
  }
199
- _a = File.FileTypeId;
209
+ _a = FileSystem.FileTypeId;
200
210
  return fd => new FileImpl(fd);
201
211
  })();
212
+ // == makeTempFile
213
+ const makeTempFileFactory = method => {
214
+ const makeDirectory = makeTempDirectoryFactory(method);
215
+ const open = openFactory(method);
216
+ const randomHexString = bytes => Effect.sync(() => Crypto.randomBytes(bytes).toString("hex"));
217
+ return options => Effect.tap(path => Effect.scoped(open(path, {
218
+ flag: "w+"
219
+ })))(Effect.map(([directory, random]) => Path.join(directory, random))(Effect.zip(makeDirectory(options), randomHexString(6))));
220
+ };
221
+ const makeTempFile = /*#__PURE__*/makeTempFileFactory("makeTempFile");
222
+ // == makeTempFileScoped
223
+ const makeTempFileScoped = /*#__PURE__*/(() => {
224
+ const makeFile = /*#__PURE__*/makeTempFileFactory("makeTempFileScoped");
225
+ const removeFile = /*#__PURE__*/removeFactory("makeTempFileScoped");
226
+ return options => Effect.acquireRelease(makeFile(options), file => Effect.orDie(removeFile(file)));
227
+ })();
202
228
  // == readDirectory
203
229
  const readDirectory = /*#__PURE__*/(() => {
204
230
  const nodeReadDirectory = /*#__PURE__*/(0, _Effectify.effectify)(NFS.readdir, /*#__PURE__*/handleErrnoException("readDirectory"), /*#__PURE__*/handleBadArgument("readDirectory"));
@@ -268,10 +294,10 @@ const truncate = /*#__PURE__*/(() => {
268
294
  const nodeTruncate = /*#__PURE__*/(0, _Effectify.effectify)(NFS.truncate, /*#__PURE__*/handleErrnoException("truncate"), /*#__PURE__*/handleBadArgument("truncate"));
269
295
  return (path, length) => nodeTruncate(path, Number(length));
270
296
  })();
271
- // == utime
272
- const utime = /*#__PURE__*/(() => {
273
- const nodeUtime = /*#__PURE__*/(0, _Effectify.effectify)(NFS.utimes, /*#__PURE__*/handleErrnoException("utime"), /*#__PURE__*/handleBadArgument("utime"));
274
- return (path, atime, mtime) => nodeUtime(path, atime, mtime);
297
+ // == utimes
298
+ const utimes = /*#__PURE__*/(() => {
299
+ const nodeUtimes = /*#__PURE__*/(0, _Effectify.effectify)(NFS.utimes, /*#__PURE__*/handleErrnoException("utime"), /*#__PURE__*/handleBadArgument("utime"));
300
+ return (path, atime, mtime) => nodeUtimes(path, atime, mtime);
275
301
  })();
276
302
  // == writeFile
277
303
  const writeFile = (path, data, options) => Effect.asyncInterrupt(resume => {
@@ -295,14 +321,16 @@ const writeFile = (path, data, options) => Effect.asyncInterrupt(resume => {
295
321
  });
296
322
  const fileSystemImpl = /*#__PURE__*/FileSystem.make({
297
323
  access,
298
- copyFile,
299
324
  chmod,
300
325
  chown,
326
+ copy,
327
+ copyFile,
301
328
  link,
302
329
  makeDirectory,
303
330
  makeTempDirectory,
304
331
  makeTempDirectoryScoped,
305
332
  makeTempFile,
333
+ makeTempFileScoped,
306
334
  open,
307
335
  readDirectory,
308
336
  readFile,
@@ -313,7 +341,7 @@ const fileSystemImpl = /*#__PURE__*/FileSystem.make({
313
341
  stat,
314
342
  symlink,
315
343
  truncate,
316
- utime,
344
+ utimes,
317
345
  writeFile
318
346
  });
319
347
  /** @internal */
@@ -1 +1 @@
1
- {"version":3,"file":"fileSystem.js","names":["Option","_interopRequireWildcard","require","Effect","Layer","_Effectify","Error","FileSystem","File","Crypto","NFS","OS","Path","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","handleErrnoException","method","err","path","reason","code","SystemError","module","pathOrDescriptor","toString","syscall","message","handleBadArgument","BadArgument","String","access","nodeAccess","effectify","options","mode","constants","F_OK","readable","R_OK","writable","W_OK","copyFile","nodeCopyFile","fromPath","toPath","chmod","nodeChmod","chown","nodeChown","uid","gid","link","nodeLink","existingPath","newPath","makeDirectory","nodeMkdir","mkdir","recursive","makeTempDirectoryFactory","nodeMkdtemp","mkdtemp","suspend","prefix","directory","join","tmpdir","makeTempDirectory","removeFactory","nodeRm","rm","remove","makeTempDirectoryScoped","removeDirectory","acquireRelease","orDie","makeTempFile","randomHexString","bytes","sync","randomBytes","flatMap","open","flag","map","random","zip","nodeOpen","nodeClose","close","fd","makeFile","Descriptor","nodeReadFactory","read","nodeRead","nodeReadAlloc","nodeStat","fstat","nodeTruncate","ftruncate","nodeWriteFactory","write","nodeWrite","nodeWriteAll","FileImpl","constructor","_a","FileTypeId","stat","makeFileInfo","buffer","length","Number","undefined","offset","Size","readAlloc","size","Buffer","allocUnsafeSlow","bytesRead","none","some","dst","copy","truncate","writeAll","bytesWritten","unit","subarray","readDirectory","nodeReadDirectory","readdir","readFile","asyncInterrupt","resume","controller","AbortController","signal","data","fail","succeed","abort","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","utime","nodeUtime","utimes","writeFile","fileSystemImpl","make","layer","exports"],"sources":["../src/internal/fileSystem.ts"],"sourcesContent":[null],"mappings":"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"}
1
+ {"version":3,"file":"fileSystem.js","names":["_Function","require","Option","_interopRequireWildcard","Effect","Layer","_Effectify","Error","FileSystem","Crypto","NFS","OS","Path","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","handleErrnoException","method","err","path","reason","code","SystemError","module","pathOrDescriptor","syscall","message","handleBadArgument","BadArgument","String","access","nodeAccess","effectify","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","map","fd","makeFile","FileDescriptor","flag","nodeReadFactory","read","nodeRead","nodeReadAlloc","nodeStat","fstat","nodeTruncate","ftruncate","nodeWriteFactory","write","nodeWrite","nodeWriteAll","FileImpl","constructor","_a","identity","stat","makeFileInfo","buffer","length","Number","undefined","offset","Size","readAlloc","size","flatMap","sync","Buffer","allocUnsafeSlow","bytesRead","none","some","dst","truncate","writeAll","bytesWritten","fail","subarray","unit","FileTypeId","makeTempFileFactory","randomHexString","bytes","randomBytes","toString","tap","scoped","random","zip","makeTempFile","makeTempFileScoped","removeFile","file","readDirectory","nodeReadDirectory","readdir","readFile","asyncInterrupt","resume","controller","AbortController","signal","data","succeed","abort","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","writeFile","fileSystemImpl","make","layer","exports"],"sources":["../src/internal/fileSystem.ts"],"sourcesContent":[null],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=path.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"path.d.ts","sourceRoot":"","sources":["../src/internal/path.ts"],"names":[],"mappings":""}
@@ -0,0 +1,49 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.layerWin32 = exports.layerPosix = exports.layer = exports.Path = void 0;
7
+ var _Context = /*#__PURE__*/require("@effect/data/Context");
8
+ var Effect = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/io/Effect"));
9
+ var Layer = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/io/Layer"));
10
+ var _Error = /*#__PURE__*/require("@effect/platform/Error");
11
+ var NodePath = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("node:path"));
12
+ var NodeUrl = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("node:url"));
13
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
14
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
15
+ /** @internal */
16
+ const Path = /*#__PURE__*/(0, _Context.Tag)();
17
+ exports.Path = Path;
18
+ const fromFileUrl = url => Effect.tryCatch(() => NodeUrl.fileURLToPath(url), error => (0, _Error.BadArgument)({
19
+ module: "Path",
20
+ method: "fromFileUrl",
21
+ message: `${error}`
22
+ }));
23
+ const toFileUrl = path => Effect.tryCatch(() => NodeUrl.pathToFileURL(path), error => (0, _Error.BadArgument)({
24
+ module: "Path",
25
+ method: "toFileUrl",
26
+ message: `${error}`
27
+ }));
28
+ /** @internal */
29
+ const layerPosix = /*#__PURE__*/Layer.succeed(Path, /*#__PURE__*/Path.of({
30
+ ...NodePath.posix,
31
+ fromFileUrl,
32
+ toFileUrl
33
+ }));
34
+ /** @internal */
35
+ exports.layerPosix = layerPosix;
36
+ const layerWin32 = /*#__PURE__*/Layer.succeed(Path, /*#__PURE__*/Path.of({
37
+ ...NodePath.win32,
38
+ fromFileUrl,
39
+ toFileUrl
40
+ }));
41
+ /** @internal */
42
+ exports.layerWin32 = layerWin32;
43
+ const layer = /*#__PURE__*/Layer.succeed(Path, /*#__PURE__*/Path.of({
44
+ ...NodePath,
45
+ fromFileUrl,
46
+ toFileUrl
47
+ }));
48
+ exports.layer = layer;
49
+ //# sourceMappingURL=path.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"path.js","names":["_Context","require","Effect","_interopRequireWildcard","Layer","_Error","NodePath","NodeUrl","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","Path","Tag","exports","fromFileUrl","url","tryCatch","fileURLToPath","error","BadArgument","module","method","message","toFileUrl","path","pathToFileURL","layerPosix","succeed","of","posix","layerWin32","win32","layer"],"sources":["../src/internal/path.ts"],"sourcesContent":[null],"mappings":"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"}
package/mjs/Console.mjs CHANGED
@@ -1,15 +1,5 @@
1
1
  /**
2
2
  * @since 1.0.0
3
3
  */
4
- export {
5
- /**
6
- * @since 1.0.0
7
- * @category tag
8
- */
9
- Console,
10
- /**
11
- * @since 1.0.0
12
- * @category layer
13
- */
14
- layer } from "@effect/platform/Console";
4
+ export * from "@effect/platform/Console";
15
5
  //# sourceMappingURL=Console.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"Console.mjs","names":["Console","layer"],"sources":["../src/Console.ts"],"sourcesContent":[null],"mappings":"AAAA;;;AAIA;AACE;;;;AAIAA,OAAO;AACP;;;;AAIAC,KAAK,QACA,0BAA0B"}
1
+ {"version":3,"file":"Console.mjs","names":[],"sources":["../src/Console.ts"],"sourcesContent":[null],"mappings":"AAAA;;;AAGA,cAAc,0BAA0B"}
package/mjs/Path.mjs ADDED
@@ -0,0 +1,26 @@
1
+ /**
2
+ * @since 1.0.0
3
+ */
4
+ import * as internal from "@effect/platform-node/internal/path";
5
+ export {
6
+ /**
7
+ * @since 1.0.0
8
+ * @category tag
9
+ */
10
+ Path } from "@effect/platform/Path";
11
+ /**
12
+ * @since 1.0.0
13
+ * @category layer
14
+ */
15
+ export const layer = internal.layer;
16
+ /**
17
+ * @since 1.0.0
18
+ * @category layer
19
+ */
20
+ export const layerPosix = internal.layerPosix;
21
+ /**
22
+ * @since 1.0.0
23
+ * @category layer
24
+ */
25
+ export const layerWin32 = internal.layerWin32;
26
+ //# sourceMappingURL=Path.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Path.mjs","names":["internal","Path","layer","layerPosix","layerWin32"],"sources":["../src/Path.ts"],"sourcesContent":[null],"mappings":"AAAA;;;AAKA,OAAO,KAAKA,QAAQ,MAAM,qCAAqC;AAG/D;AACE;;;;AAIAC,IAAI,QACC,uBAAuB;AAE9B;;;;AAIA,OAAO,MAAMC,KAAK,GAA8BF,QAAQ,CAACE,KAAK;AAE9D;;;;AAIA,OAAO,MAAMC,UAAU,GAA8BH,QAAQ,CAACG,UAAU;AAExE;;;;AAIA,OAAO,MAAMC,UAAU,GAA8BJ,QAAQ,CAACI,UAAU"}
@@ -1,10 +1,10 @@
1
+ import { identity } from "@effect/data/Function";
1
2
  import * as Option from "@effect/data/Option";
2
3
  import * as Effect from "@effect/io/Effect";
3
4
  import * as Layer from "@effect/io/Layer";
4
5
  import { effectify } from "@effect/platform/Effectify";
5
6
  import * as Error from "@effect/platform/Error";
6
7
  import * as FileSystem from "@effect/platform/FileSystem";
7
- import * as File from "@effect/platform/FileSystem/File";
8
8
  import * as Crypto from "node:crypto";
9
9
  import * as NFS from "node:fs";
10
10
  import * as OS from "node:os";
@@ -39,7 +39,7 @@ const handleErrnoException = method => (err, [path]) => {
39
39
  reason,
40
40
  module: "FileSystem",
41
41
  method,
42
- pathOrDescriptor: path.toString(),
42
+ pathOrDescriptor: path,
43
43
  syscall: err.syscall,
44
44
  message: err.message
45
45
  });
@@ -63,6 +63,15 @@ const access = /*#__PURE__*/(() => {
63
63
  return nodeAccess(path, mode);
64
64
  };
65
65
  })();
66
+ // == copy
67
+ const copy = /*#__PURE__*/(() => {
68
+ const nodeCp = /*#__PURE__*/effectify(NFS.cp, /*#__PURE__*/handleErrnoException("copy"), /*#__PURE__*/handleBadArgument("copy"));
69
+ return (fromPath, toPath, options) => nodeCp(fromPath, toPath, {
70
+ force: options?.overwrite ?? false,
71
+ preserveTimestamps: options?.preserveTimestamps ?? false,
72
+ recursive: true
73
+ });
74
+ })();
66
75
  // == copyFile
67
76
  const copyFile = /*#__PURE__*/(() => {
68
77
  const nodeCopyFile = /*#__PURE__*/effectify(NFS.copyFile, /*#__PURE__*/handleErrnoException("copyFile"), /*#__PURE__*/handleBadArgument("copyFile"));
@@ -97,7 +106,7 @@ const makeTempDirectoryFactory = method => {
97
106
  return options => Effect.suspend(() => {
98
107
  const prefix = options?.prefix ?? "";
99
108
  const directory = typeof options?.directory === "string" ? Path.join(options.directory, ".") : OS.tmpdir();
100
- return nodeMkdtemp(prefix ? Path.join(directory, prefix) : directory);
109
+ return nodeMkdtemp(prefix ? Path.join(directory, prefix) : directory + "/");
101
110
  });
102
111
  };
103
112
  const makeTempDirectory = /*#__PURE__*/makeTempDirectoryFactory("makeTempDirectory");
@@ -117,20 +126,13 @@ const makeTempDirectoryScoped = /*#__PURE__*/(() => {
117
126
  recursive: true
118
127
  })));
119
128
  })();
120
- // == makeTempFile
121
- const makeTempFile = /*#__PURE__*/(() => {
122
- const makeDirectory = /*#__PURE__*/makeTempDirectoryFactory("makeTempFile");
123
- const randomHexString = bytes => Effect.sync(() => Crypto.randomBytes(bytes).toString("hex"));
124
- return options => Effect.flatMap(path => open(path, {
125
- flag: "w+"
126
- }))(Effect.map(([directory, random]) => Path.join(directory, random))(Effect.zip(makeDirectory(options), randomHexString(6))));
127
- })();
128
129
  // == open
129
- const open = /*#__PURE__*/(() => {
130
- const nodeOpen = /*#__PURE__*/effectify(NFS.open, /*#__PURE__*/handleErrnoException("open"), /*#__PURE__*/handleBadArgument("open"));
131
- const nodeClose = /*#__PURE__*/effectify(NFS.close, /*#__PURE__*/handleErrnoException("open"), /*#__PURE__*/handleBadArgument("open"));
132
- return (path, options) => Effect.map(fd => makeFile(File.Descriptor(fd)))(Effect.acquireRelease(nodeOpen(path, options?.flag ?? "r", options?.mode), fd => Effect.orDie(nodeClose(fd))));
133
- })();
130
+ const openFactory = method => {
131
+ const nodeOpen = effectify(NFS.open, handleErrnoException(method), handleBadArgument(method));
132
+ const nodeClose = effectify(NFS.close, handleErrnoException(method), handleBadArgument(method));
133
+ return (path, options) => Effect.map(fd => makeFile(FileSystem.FileDescriptor(fd)))(Effect.acquireRelease(nodeOpen(path, options?.flag ?? "r", options?.mode), fd => Effect.orDie(nodeClose(fd))));
134
+ };
135
+ const open = /*#__PURE__*/openFactory("open");
134
136
  const makeFile = /*#__PURE__*/(() => {
135
137
  var _a;
136
138
  const nodeReadFactory = method => effectify(NFS.read, handleErrnoException(method), handleBadArgument(method));
@@ -144,7 +146,7 @@ const makeFile = /*#__PURE__*/(() => {
144
146
  class FileImpl {
145
147
  constructor(fd) {
146
148
  this.fd = fd;
147
- this[_a] = File.FileTypeId;
149
+ this[_a] = identity;
148
150
  }
149
151
  get stat() {
150
152
  return Effect.map(nodeStat(this.fd), makeFileInfo);
@@ -181,16 +183,40 @@ const makeFile = /*#__PURE__*/(() => {
181
183
  }
182
184
  writeAll(buffer) {
183
185
  return Effect.flatMap(nodeWriteAll(this.fd, buffer), bytesWritten => {
184
- if (bytesWritten === buffer.length) {
185
- return Effect.unit();
186
+ if (bytesWritten === 0) {
187
+ return Effect.fail(Error.SystemError({
188
+ module: "FileSystem",
189
+ method: "writeAll",
190
+ reason: "WriteZero",
191
+ pathOrDescriptor: this.fd,
192
+ message: "write returned 0 bytes written"
193
+ }));
194
+ } else if (bytesWritten < buffer.length) {
195
+ return this.writeAll(buffer.subarray(bytesWritten));
186
196
  }
187
- return this.writeAll(buffer.subarray(bytesWritten));
197
+ return Effect.unit();
188
198
  });
189
199
  }
190
200
  }
191
- _a = File.FileTypeId;
201
+ _a = FileSystem.FileTypeId;
192
202
  return fd => new FileImpl(fd);
193
203
  })();
204
+ // == makeTempFile
205
+ const makeTempFileFactory = method => {
206
+ const makeDirectory = makeTempDirectoryFactory(method);
207
+ const open = openFactory(method);
208
+ const randomHexString = bytes => Effect.sync(() => Crypto.randomBytes(bytes).toString("hex"));
209
+ return options => Effect.tap(path => Effect.scoped(open(path, {
210
+ flag: "w+"
211
+ })))(Effect.map(([directory, random]) => Path.join(directory, random))(Effect.zip(makeDirectory(options), randomHexString(6))));
212
+ };
213
+ const makeTempFile = /*#__PURE__*/makeTempFileFactory("makeTempFile");
214
+ // == makeTempFileScoped
215
+ const makeTempFileScoped = /*#__PURE__*/(() => {
216
+ const makeFile = /*#__PURE__*/makeTempFileFactory("makeTempFileScoped");
217
+ const removeFile = /*#__PURE__*/removeFactory("makeTempFileScoped");
218
+ return options => Effect.acquireRelease(makeFile(options), file => Effect.orDie(removeFile(file)));
219
+ })();
194
220
  // == readDirectory
195
221
  const readDirectory = /*#__PURE__*/(() => {
196
222
  const nodeReadDirectory = /*#__PURE__*/effectify(NFS.readdir, /*#__PURE__*/handleErrnoException("readDirectory"), /*#__PURE__*/handleBadArgument("readDirectory"));
@@ -260,10 +286,10 @@ const truncate = /*#__PURE__*/(() => {
260
286
  const nodeTruncate = /*#__PURE__*/effectify(NFS.truncate, /*#__PURE__*/handleErrnoException("truncate"), /*#__PURE__*/handleBadArgument("truncate"));
261
287
  return (path, length) => nodeTruncate(path, Number(length));
262
288
  })();
263
- // == utime
264
- const utime = /*#__PURE__*/(() => {
265
- const nodeUtime = /*#__PURE__*/effectify(NFS.utimes, /*#__PURE__*/handleErrnoException("utime"), /*#__PURE__*/handleBadArgument("utime"));
266
- return (path, atime, mtime) => nodeUtime(path, atime, mtime);
289
+ // == utimes
290
+ const utimes = /*#__PURE__*/(() => {
291
+ const nodeUtimes = /*#__PURE__*/effectify(NFS.utimes, /*#__PURE__*/handleErrnoException("utime"), /*#__PURE__*/handleBadArgument("utime"));
292
+ return (path, atime, mtime) => nodeUtimes(path, atime, mtime);
267
293
  })();
268
294
  // == writeFile
269
295
  const writeFile = (path, data, options) => Effect.asyncInterrupt(resume => {
@@ -287,14 +313,16 @@ const writeFile = (path, data, options) => Effect.asyncInterrupt(resume => {
287
313
  });
288
314
  const fileSystemImpl = /*#__PURE__*/FileSystem.make({
289
315
  access,
290
- copyFile,
291
316
  chmod,
292
317
  chown,
318
+ copy,
319
+ copyFile,
293
320
  link,
294
321
  makeDirectory,
295
322
  makeTempDirectory,
296
323
  makeTempDirectoryScoped,
297
324
  makeTempFile,
325
+ makeTempFileScoped,
298
326
  open,
299
327
  readDirectory,
300
328
  readFile,
@@ -305,7 +333,7 @@ const fileSystemImpl = /*#__PURE__*/FileSystem.make({
305
333
  stat,
306
334
  symlink,
307
335
  truncate,
308
- utime,
336
+ utimes,
309
337
  writeFile
310
338
  });
311
339
  /** @internal */
@@ -1 +1 @@
1
- {"version":3,"file":"fileSystem.mjs","names":["Option","Effect","Layer","effectify","Error","FileSystem","File","Crypto","NFS","OS","Path","handleErrnoException","method","err","path","reason","code","SystemError","module","pathOrDescriptor","toString","syscall","message","handleBadArgument","BadArgument","String","access","nodeAccess","options","mode","constants","F_OK","readable","R_OK","writable","W_OK","copyFile","nodeCopyFile","fromPath","toPath","chmod","nodeChmod","chown","nodeChown","uid","gid","link","nodeLink","existingPath","newPath","makeDirectory","nodeMkdir","mkdir","recursive","makeTempDirectoryFactory","nodeMkdtemp","mkdtemp","suspend","prefix","directory","join","tmpdir","makeTempDirectory","removeFactory","nodeRm","rm","remove","makeTempDirectoryScoped","removeDirectory","acquireRelease","orDie","makeTempFile","randomHexString","bytes","sync","randomBytes","flatMap","open","flag","map","random","zip","nodeOpen","nodeClose","close","fd","makeFile","Descriptor","nodeReadFactory","read","nodeRead","nodeReadAlloc","nodeStat","fstat","nodeTruncate","ftruncate","nodeWriteFactory","write","nodeWrite","nodeWriteAll","FileImpl","constructor","_a","FileTypeId","stat","makeFileInfo","buffer","length","Number","undefined","offset","Size","readAlloc","size","Buffer","allocUnsafeSlow","bytesRead","none","some","dst","copy","truncate","writeAll","bytesWritten","unit","subarray","readDirectory","nodeReadDirectory","readdir","readFile","asyncInterrupt","resume","controller","AbortController","signal","data","fail","succeed","abort","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","utime","nodeUtime","utimes","writeFile","fileSystemImpl","make","layer"],"sources":["../../src/internal/fileSystem.ts"],"sourcesContent":[null],"mappings":"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"}
1
+ {"version":3,"file":"fileSystem.mjs","names":["identity","Option","Effect","Layer","effectify","Error","FileSystem","Crypto","NFS","OS","Path","handleErrnoException","method","err","path","reason","code","SystemError","module","pathOrDescriptor","syscall","message","handleBadArgument","BadArgument","String","access","nodeAccess","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","map","fd","makeFile","FileDescriptor","flag","nodeReadFactory","read","nodeRead","nodeReadAlloc","nodeStat","fstat","nodeTruncate","ftruncate","nodeWriteFactory","write","nodeWrite","nodeWriteAll","FileImpl","constructor","_a","stat","makeFileInfo","buffer","length","Number","undefined","offset","Size","readAlloc","size","flatMap","sync","Buffer","allocUnsafeSlow","bytesRead","none","some","dst","truncate","writeAll","bytesWritten","fail","subarray","unit","FileTypeId","makeTempFileFactory","randomHexString","bytes","randomBytes","toString","tap","scoped","random","zip","makeTempFile","makeTempFileScoped","removeFile","file","readDirectory","nodeReadDirectory","readdir","readFile","asyncInterrupt","resume","controller","AbortController","signal","data","succeed","abort","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","writeFile","fileSystemImpl","make","layer"],"sources":["../../src/internal/fileSystem.ts"],"sourcesContent":[null],"mappings":"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"}
@@ -0,0 +1,37 @@
1
+ import { Tag } from "@effect/data/Context";
2
+ import * as Effect from "@effect/io/Effect";
3
+ import * as Layer from "@effect/io/Layer";
4
+ import { BadArgument } from "@effect/platform/Error";
5
+ import * as NodePath from "node:path";
6
+ import * as NodeUrl from "node:url";
7
+ /** @internal */
8
+ export const Path = /*#__PURE__*/Tag();
9
+ const fromFileUrl = url => Effect.tryCatch(() => NodeUrl.fileURLToPath(url), error => BadArgument({
10
+ module: "Path",
11
+ method: "fromFileUrl",
12
+ message: `${error}`
13
+ }));
14
+ const toFileUrl = path => Effect.tryCatch(() => NodeUrl.pathToFileURL(path), error => BadArgument({
15
+ module: "Path",
16
+ method: "toFileUrl",
17
+ message: `${error}`
18
+ }));
19
+ /** @internal */
20
+ export const layerPosix = /*#__PURE__*/Layer.succeed(Path, /*#__PURE__*/Path.of({
21
+ ...NodePath.posix,
22
+ fromFileUrl,
23
+ toFileUrl
24
+ }));
25
+ /** @internal */
26
+ export const layerWin32 = /*#__PURE__*/Layer.succeed(Path, /*#__PURE__*/Path.of({
27
+ ...NodePath.win32,
28
+ fromFileUrl,
29
+ toFileUrl
30
+ }));
31
+ /** @internal */
32
+ export const layer = /*#__PURE__*/Layer.succeed(Path, /*#__PURE__*/Path.of({
33
+ ...NodePath,
34
+ fromFileUrl,
35
+ toFileUrl
36
+ }));
37
+ //# sourceMappingURL=path.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"path.mjs","names":["Tag","Effect","Layer","BadArgument","NodePath","NodeUrl","Path","fromFileUrl","url","tryCatch","fileURLToPath","error","module","method","message","toFileUrl","path","pathToFileURL","layerPosix","succeed","of","posix","layerWin32","win32","layer"],"sources":["../../src/internal/path.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,GAAG,QAAQ,sBAAsB;AAC1C,OAAO,KAAKC,MAAM,MAAM,mBAAmB;AAC3C,OAAO,KAAKC,KAAK,MAAM,kBAAkB;AACzC,SAASC,WAAW,QAAQ,wBAAwB;AAEpD,OAAO,KAAKC,QAAQ,MAAM,WAAW;AACrC,OAAO,KAAKC,OAAO,MAAM,UAAU;AAEnC;AACA,OAAO,MAAMC,IAAI,gBAAGN,GAAG,EAAS;AAEhC,MAAMO,WAAW,GAAIC,GAAQ,IAC3BP,MAAM,CAACQ,QAAQ,CACb,MAAMJ,OAAO,CAACK,aAAa,CAACF,GAAG,CAAC,EAC/BG,KAAK,IACJR,WAAW,CAAC;EACVS,MAAM,EAAE,MAAM;EACdC,MAAM,EAAE,aAAa;EACrBC,OAAO,EAAE,GAAGH,KAAK;CAClB,CAAC,CACL;AAEH,MAAMI,SAAS,GAAIC,IAAY,IAC7Bf,MAAM,CAACQ,QAAQ,CACb,MAAMJ,OAAO,CAACY,aAAa,CAACD,IAAI,CAAC,EAChCL,KAAK,IACJR,WAAW,CAAC;EACVS,MAAM,EAAE,MAAM;EACdC,MAAM,EAAE,WAAW;EACnBC,OAAO,EAAE,GAAGH,KAAK;CAClB,CAAC,CACL;AAEH;AACA,OAAO,MAAMO,UAAU,gBAAGhB,KAAK,CAACiB,OAAO,CACrCb,IAAI,eACJA,IAAI,CAACc,EAAE,CAAC;EACN,GAAGhB,QAAQ,CAACiB,KAAK;EACjBd,WAAW;EACXQ;CACD,CAAC,CACH;AAED;AACA,OAAO,MAAMO,UAAU,gBAAGpB,KAAK,CAACiB,OAAO,CACrCb,IAAI,eACJA,IAAI,CAACc,EAAE,CAAC;EACN,GAAGhB,QAAQ,CAACmB,KAAK;EACjBhB,WAAW;EACXQ;CACD,CAAC,CACH;AAED;AACA,OAAO,MAAMS,KAAK,gBAAGtB,KAAK,CAACiB,OAAO,CAChCb,IAAI,eACJA,IAAI,CAACc,EAAE,CAAC;EACN,GAAGhB,QAAQ;EACXG,WAAW;EACXQ;CACD,CAAC,CACH"}
package/package.json CHANGED
@@ -1,16 +1,16 @@
1
1
  {
2
2
  "name": "@effect/platform-node",
3
- "version": "0.0.0",
3
+ "version": "0.1.0",
4
4
  "license": "MIT",
5
5
  "repository": {
6
6
  "type": "git",
7
7
  "url": "https://github.com/effect-ts/platform.git"
8
8
  },
9
9
  "dependencies": {
10
- "@effect/data": "^0.12.5",
11
- "@effect/io": "^0.26.0",
12
- "@effect/stream": "^0.22.0",
13
- "@effect/platform": "^0.0.0"
10
+ "@effect/data": "^0.12.8",
11
+ "@effect/io": "^0.26.1",
12
+ "@effect/stream": "^0.22.1",
13
+ "@effect/platform": "^0.1.0"
14
14
  },
15
15
  "publishConfig": {
16
16
  "access": "public"
package/src/Console.ts CHANGED
@@ -1,16 +1,4 @@
1
1
  /**
2
2
  * @since 1.0.0
3
3
  */
4
-
5
- export {
6
- /**
7
- * @since 1.0.0
8
- * @category tag
9
- */
10
- Console,
11
- /**
12
- * @since 1.0.0
13
- * @category layer
14
- */
15
- layer
16
- } from "@effect/platform/Console"
4
+ export * from "@effect/platform/Console"
package/src/Path.ts ADDED
@@ -0,0 +1,33 @@
1
+ /**
2
+ * @since 1.0.0
3
+ */
4
+
5
+ import type { Layer } from "@effect/io/Layer"
6
+ import * as internal from "@effect/platform-node/internal/path"
7
+ import type { Path } from "@effect/platform/Path"
8
+
9
+ export {
10
+ /**
11
+ * @since 1.0.0
12
+ * @category tag
13
+ */
14
+ Path
15
+ } from "@effect/platform/Path"
16
+
17
+ /**
18
+ * @since 1.0.0
19
+ * @category layer
20
+ */
21
+ export const layer: Layer<never, never, Path> = internal.layer
22
+
23
+ /**
24
+ * @since 1.0.0
25
+ * @category layer
26
+ */
27
+ export const layerPosix: Layer<never, never, Path> = internal.layerPosix
28
+
29
+ /**
30
+ * @since 1.0.0
31
+ * @category layer
32
+ */
33
+ export const layerWin32: Layer<never, never, Path> = internal.layerWin32
@@ -1,11 +1,10 @@
1
- import { pipe } from "@effect/data/Function"
1
+ import { identity, pipe } from "@effect/data/Function"
2
2
  import * as Option from "@effect/data/Option"
3
3
  import * as Effect from "@effect/io/Effect"
4
4
  import * as Layer from "@effect/io/Layer"
5
5
  import { effectify } from "@effect/platform/Effectify"
6
6
  import * as Error from "@effect/platform/Error"
7
7
  import * as FileSystem from "@effect/platform/FileSystem"
8
- import * as File from "@effect/platform/FileSystem/File"
9
8
  import * as Crypto from "node:crypto"
10
9
  import * as NFS from "node:fs"
11
10
  import * as OS from "node:os"
@@ -54,7 +53,7 @@ const handleErrnoException = (method: string) =>
54
53
  reason,
55
54
  module: "FileSystem",
56
55
  method,
57
- pathOrDescriptor: path.toString(),
56
+ pathOrDescriptor: path as string | number,
58
57
  syscall: err.syscall,
59
58
  message: err.message
60
59
  })
@@ -88,6 +87,22 @@ const access = (() => {
88
87
  }
89
88
  })()
90
89
 
90
+ // == copy
91
+
92
+ const copy = (() => {
93
+ const nodeCp = effectify(
94
+ NFS.cp,
95
+ handleErrnoException("copy"),
96
+ handleBadArgument("copy")
97
+ )
98
+ return (fromPath: string, toPath: string, options?: FileSystem.CopyOptions) =>
99
+ nodeCp(fromPath, toPath, {
100
+ force: options?.overwrite ?? false,
101
+ preserveTimestamps: options?.preserveTimestamps ?? false,
102
+ recursive: true
103
+ })
104
+ })()
105
+
91
106
  // == copyFile
92
107
 
93
108
  const copyFile = (() => {
@@ -162,7 +177,7 @@ const makeTempDirectoryFactory = (method: string) => {
162
177
  ? Path.join(options.directory, ".")
163
178
  : OS.tmpdir()
164
179
 
165
- return nodeMkdtemp(prefix ? Path.join(directory, prefix) : directory)
180
+ return nodeMkdtemp(prefix ? Path.join(directory, prefix) : directory + "/")
166
181
  })
167
182
  }
168
183
  const makeTempDirectory = makeTempDirectoryFactory("makeTempDirectory")
@@ -175,7 +190,11 @@ const removeFactory = (method: string) => {
175
190
  handleErrnoException(method),
176
191
  handleBadArgument(method)
177
192
  )
178
- return (path: string, options?: FileSystem.RemoveOptions) => nodeRm(path, { recursive: options?.recursive ?? false })
193
+ return (path: string, options?: FileSystem.RemoveOptions) =>
194
+ nodeRm(
195
+ path,
196
+ { recursive: options?.recursive ?? false }
197
+ )
179
198
  }
180
199
  const remove = removeFactory("remove")
181
200
 
@@ -193,31 +212,18 @@ const makeTempDirectoryScoped = (() => {
193
212
  )
194
213
  })()
195
214
 
196
- // == makeTempFile
197
-
198
- const makeTempFile = (() => {
199
- const makeDirectory = makeTempDirectoryFactory("makeTempFile")
200
- const randomHexString = (bytes: number) => Effect.sync(() => Crypto.randomBytes(bytes).toString("hex"))
201
- return (options?: FileSystem.MakeTempFileOptions) =>
202
- pipe(
203
- Effect.zip(makeDirectory(options), randomHexString(6)),
204
- Effect.map(([directory, random]) => Path.join(directory, random)),
205
- Effect.flatMap((path) => open(path, { flag: "w+" }))
206
- )
207
- })()
208
-
209
215
  // == open
210
216
 
211
- const open = (() => {
217
+ const openFactory = (method: string) => {
212
218
  const nodeOpen = effectify(
213
219
  NFS.open,
214
- handleErrnoException("open"),
215
- handleBadArgument("open")
220
+ handleErrnoException(method),
221
+ handleBadArgument(method)
216
222
  )
217
223
  const nodeClose = effectify(
218
224
  NFS.close,
219
- handleErrnoException("open"),
220
- handleBadArgument("open")
225
+ handleErrnoException(method),
226
+ handleBadArgument(method)
221
227
  )
222
228
 
223
229
  return (path: string, options?: FileSystem.OpenFileOptions) =>
@@ -226,9 +232,10 @@ const open = (() => {
226
232
  nodeOpen(path, options?.flag ?? "r", options?.mode),
227
233
  (fd) => Effect.orDie(nodeClose(fd))
228
234
  ),
229
- Effect.map((fd) => makeFile(File.Descriptor(fd)))
235
+ Effect.map((fd) => makeFile(FileSystem.FileDescriptor(fd)))
230
236
  )
231
- })()
237
+ }
238
+ const open = openFactory("open")
232
239
 
233
240
  const makeFile = (() => {
234
241
  const nodeReadFactory = (method: string) =>
@@ -259,11 +266,11 @@ const makeFile = (() => {
259
266
  const nodeWrite = nodeWriteFactory("write")
260
267
  const nodeWriteAll = nodeWriteFactory("writeAll")
261
268
 
262
- class FileImpl {
263
- readonly [File.FileTypeId] = File.FileTypeId
269
+ class FileImpl implements FileSystem.File {
270
+ readonly [FileSystem.FileTypeId] = identity
264
271
 
265
272
  constructor(
266
- readonly fd: File.File.Descriptor
273
+ readonly fd: FileSystem.File.Descriptor
267
274
  ) {}
268
275
 
269
276
  get stat() {
@@ -272,7 +279,7 @@ const makeFile = (() => {
272
279
 
273
280
  read(
274
281
  buffer: Uint8Array,
275
- options?: File.FileReadOptions
282
+ options?: FileSystem.FileReadOptions
276
283
  ) {
277
284
  return Effect.map(
278
285
  nodeRead(this.fd, {
@@ -284,7 +291,7 @@ const makeFile = (() => {
284
291
  )
285
292
  }
286
293
 
287
- readAlloc(size: FileSystem.Size, options?: File.FileReadOptions | undefined) {
294
+ readAlloc(size: FileSystem.Size, options?: FileSystem.FileReadOptions | undefined) {
288
295
  return Effect.flatMap(
289
296
  Effect.sync(() => Buffer.allocUnsafeSlow(Number(size))),
290
297
  (buffer) =>
@@ -323,16 +330,51 @@ const makeFile = (() => {
323
330
  return Effect.flatMap(
324
331
  nodeWriteAll(this.fd, buffer),
325
332
  (bytesWritten) => {
326
- if (bytesWritten === buffer.length) {
327
- return Effect.unit()
333
+ if (bytesWritten === 0) {
334
+ return Effect.fail(Error.SystemError({
335
+ module: "FileSystem",
336
+ method: "writeAll",
337
+ reason: "WriteZero",
338
+ pathOrDescriptor: this.fd,
339
+ message: "write returned 0 bytes written"
340
+ }))
341
+ } else if (bytesWritten < buffer.length) {
342
+ return this.writeAll(buffer.subarray(bytesWritten))
328
343
  }
329
- return this.writeAll(buffer.subarray(bytesWritten))
344
+ return Effect.unit()
330
345
  }
331
346
  )
332
347
  }
333
348
  }
334
349
 
335
- return (fd: File.File.Descriptor) => new FileImpl(fd) as File.File
350
+ return (fd: FileSystem.File.Descriptor): FileSystem.File => new FileImpl(fd)
351
+ })()
352
+
353
+ // == makeTempFile
354
+
355
+ const makeTempFileFactory = (method: string) => {
356
+ const makeDirectory = makeTempDirectoryFactory(method)
357
+ const open = openFactory(method)
358
+ const randomHexString = (bytes: number) => Effect.sync(() => Crypto.randomBytes(bytes).toString("hex"))
359
+ return (options?: FileSystem.MakeTempFileOptions) =>
360
+ pipe(
361
+ Effect.zip(makeDirectory(options), randomHexString(6)),
362
+ Effect.map(([directory, random]) => Path.join(directory, random)),
363
+ Effect.tap((path) => Effect.scoped(open(path, { flag: "w+" })))
364
+ )
365
+ }
366
+ const makeTempFile = makeTempFileFactory("makeTempFile")
367
+
368
+ // == makeTempFileScoped
369
+
370
+ const makeTempFileScoped = (() => {
371
+ const makeFile = makeTempFileFactory("makeTempFileScoped")
372
+ const removeFile = removeFactory("makeTempFileScoped")
373
+ return (options?: FileSystem.MakeTempFileOptions) =>
374
+ Effect.acquireRelease(
375
+ makeFile(options),
376
+ (file) => Effect.orDie(removeFile(file))
377
+ )
336
378
  })()
337
379
 
338
380
  // == readDirectory
@@ -404,7 +446,7 @@ const rename = (() => {
404
446
 
405
447
  // == stat
406
448
 
407
- const makeFileInfo = (stat: NFS.Stats): File.File.Info => ({
449
+ const makeFileInfo = (stat: NFS.Stats): FileSystem.File.Info => ({
408
450
  type: stat.isFile() ?
409
451
  "File" :
410
452
  stat.isDirectory() ?
@@ -465,15 +507,15 @@ const truncate = (() => {
465
507
  return (path: string, length?: FileSystem.Size) => nodeTruncate(path, Number(length))
466
508
  })()
467
509
 
468
- // == utime
510
+ // == utimes
469
511
 
470
- const utime = (() => {
471
- const nodeUtime = effectify(
512
+ const utimes = (() => {
513
+ const nodeUtimes = effectify(
472
514
  NFS.utimes,
473
515
  handleErrnoException("utime"),
474
516
  handleBadArgument("utime")
475
517
  )
476
- return (path: string, atime: number | Date, mtime: number | Date) => nodeUtime(path, atime, mtime)
518
+ return (path: string, atime: number | Date, mtime: number | Date) => nodeUtimes(path, atime, mtime)
477
519
  })()
478
520
 
479
521
  // == writeFile
@@ -501,14 +543,16 @@ const writeFile = (path: string, data: Uint8Array, options?: FileSystem.WriteFil
501
543
 
502
544
  const fileSystemImpl = FileSystem.make({
503
545
  access,
504
- copyFile,
505
546
  chmod,
506
547
  chown,
548
+ copy,
549
+ copyFile,
507
550
  link,
508
551
  makeDirectory,
509
552
  makeTempDirectory,
510
553
  makeTempDirectoryScoped,
511
554
  makeTempFile,
555
+ makeTempFileScoped,
512
556
  open,
513
557
  readDirectory,
514
558
  readFile,
@@ -519,7 +563,7 @@ const fileSystemImpl = FileSystem.make({
519
563
  stat,
520
564
  symlink,
521
565
  truncate,
522
- utime,
566
+ utimes,
523
567
  writeFile
524
568
  })
525
569
 
@@ -0,0 +1,62 @@
1
+ import { Tag } from "@effect/data/Context"
2
+ import * as Effect from "@effect/io/Effect"
3
+ import * as Layer from "@effect/io/Layer"
4
+ import { BadArgument } from "@effect/platform/Error"
5
+ import type { Path as _Path } from "@effect/platform/Path"
6
+ import * as NodePath from "node:path"
7
+ import * as NodeUrl from "node:url"
8
+
9
+ /** @internal */
10
+ export const Path = Tag<_Path>()
11
+
12
+ const fromFileUrl = (url: URL): Effect.Effect<never, BadArgument, string> =>
13
+ Effect.tryCatch(
14
+ () => NodeUrl.fileURLToPath(url),
15
+ (error) =>
16
+ BadArgument({
17
+ module: "Path",
18
+ method: "fromFileUrl",
19
+ message: `${error}`
20
+ })
21
+ )
22
+
23
+ const toFileUrl = (path: string): Effect.Effect<never, BadArgument, URL> =>
24
+ Effect.tryCatch(
25
+ () => NodeUrl.pathToFileURL(path),
26
+ (error) =>
27
+ BadArgument({
28
+ module: "Path",
29
+ method: "toFileUrl",
30
+ message: `${error}`
31
+ })
32
+ )
33
+
34
+ /** @internal */
35
+ export const layerPosix = Layer.succeed(
36
+ Path,
37
+ Path.of({
38
+ ...NodePath.posix,
39
+ fromFileUrl,
40
+ toFileUrl
41
+ })
42
+ )
43
+
44
+ /** @internal */
45
+ export const layerWin32 = Layer.succeed(
46
+ Path,
47
+ Path.of({
48
+ ...NodePath.win32,
49
+ fromFileUrl,
50
+ toFileUrl
51
+ })
52
+ )
53
+
54
+ /** @internal */
55
+ export const layer = Layer.succeed(
56
+ Path,
57
+ Path.of({
58
+ ...NodePath,
59
+ fromFileUrl,
60
+ toFileUrl
61
+ })
62
+ )