@effect/platform-bun 0.49.32 → 0.50.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/BunMultipart.js +14 -11
- package/dist/cjs/BunMultipart.js.map +1 -1
- package/dist/cjs/internal/httpServer.js +3 -4
- package/dist/cjs/internal/httpServer.js.map +1 -1
- package/dist/cjs/internal/multipart.js +155 -0
- package/dist/cjs/internal/multipart.js.map +1 -0
- package/dist/dts/BunMultipart.d.ts +13 -1
- package/dist/dts/BunMultipart.d.ts.map +1 -1
- package/dist/dts/internal/multipart.d.ts +2 -0
- package/dist/dts/internal/multipart.d.ts.map +1 -0
- package/dist/esm/BunMultipart.js +5 -1
- package/dist/esm/BunMultipart.js.map +1 -1
- package/dist/esm/internal/httpServer.js +3 -4
- package/dist/esm/internal/httpServer.js.map +1 -1
- package/dist/esm/internal/multipart.js +145 -0
- package/dist/esm/internal/multipart.js.map +1 -0
- package/package.json +5 -4
- package/src/BunMultipart.ts +18 -1
- package/src/internal/httpServer.ts +3 -4
- package/src/internal/multipart.ts +142 -0
package/dist/cjs/BunMultipart.js
CHANGED
|
@@ -3,15 +3,18 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
6
|
+
exports.stream = exports.persisted = void 0;
|
|
7
|
+
var internal = _interopRequireWildcard(require("./internal/multipart.js"));
|
|
8
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
9
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
10
|
+
/**
|
|
11
|
+
* @since 1.0.0
|
|
12
|
+
* @category constructors
|
|
13
|
+
*/
|
|
14
|
+
const stream = exports.stream = internal.stream;
|
|
15
|
+
/**
|
|
16
|
+
* @since 1.0.0
|
|
17
|
+
* @category constructors
|
|
18
|
+
*/
|
|
19
|
+
const persisted = exports.persisted = internal.persisted;
|
|
17
20
|
//# sourceMappingURL=BunMultipart.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BunMultipart.js","names":["
|
|
1
|
+
{"version":3,"file":"BunMultipart.js","names":["internal","_interopRequireWildcard","require","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","stream","exports","persisted"],"sources":["../../src/BunMultipart.ts"],"sourcesContent":[null],"mappings":";;;;;;AASA,IAAAA,QAAA,GAAAC,uBAAA,CAAAC,OAAA;AAAmD,SAAAC,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAH,wBAAAG,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA,eAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,WAAAK,OAAA,EAAAL,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA,OAAAQ,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,OAAAC,cAAA,CAAAC,IAAA,CAAAhB,CAAA,EAAAc,CAAA,SAAAG,CAAA,GAAAP,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA,UAAAG,CAAA,KAAAA,CAAA,CAAAV,GAAA,IAAAU,CAAA,CAAAC,GAAA,IAAAP,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAG,CAAA,IAAAT,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA,YAAAN,CAAA,CAAAH,OAAA,GAAAL,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAe,GAAA,CAAAlB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAEnD;;;;AAIO,MAAMW,MAAM,GAAAC,OAAA,CAAAD,MAAA,GAAiFvB,QAAQ,CAACuB,MAAM;AAEnH;;;;AAIO,MAAME,SAAS,GAAAD,OAAA,CAAAC,SAAA,GAGpBzB,QAAQ,CAACyB,SAAS","ignoreList":[]}
|
|
@@ -4,7 +4,6 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.requestSource = exports.make = exports.layerTest = exports.layerServer = exports.layerContext = exports.layerConfig = exports.layer = void 0;
|
|
7
|
-
var MultipartNode = _interopRequireWildcard(require("@effect/platform-node-shared/NodeMultipart"));
|
|
8
7
|
var Cookies = _interopRequireWildcard(require("@effect/platform/Cookies"));
|
|
9
8
|
var Etag = _interopRequireWildcard(require("@effect/platform/Etag"));
|
|
10
9
|
var FetchHttpClient = _interopRequireWildcard(require("@effect/platform/FetchHttpClient"));
|
|
@@ -25,9 +24,9 @@ var Inspectable = _interopRequireWildcard(require("effect/Inspectable"));
|
|
|
25
24
|
var Layer = _interopRequireWildcard(require("effect/Layer"));
|
|
26
25
|
var Option = _interopRequireWildcard(require("effect/Option"));
|
|
27
26
|
var Stream = _interopRequireWildcard(require("effect/Stream"));
|
|
28
|
-
var _nodeStream = require("node:stream");
|
|
29
27
|
var BunContext = _interopRequireWildcard(require("../BunContext.js"));
|
|
30
28
|
var Platform = _interopRequireWildcard(require("../BunHttpPlatform.js"));
|
|
29
|
+
var MultipartBun = _interopRequireWildcard(require("./multipart.js"));
|
|
31
30
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
32
31
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
33
32
|
/** @internal */
|
|
@@ -257,11 +256,11 @@ class ServerRequestImpl extends Inspectable.Class {
|
|
|
257
256
|
if (this.multipartEffect) {
|
|
258
257
|
return this.multipartEffect;
|
|
259
258
|
}
|
|
260
|
-
this.multipartEffect = Effect.runSync(Effect.cached(
|
|
259
|
+
this.multipartEffect = Effect.runSync(Effect.cached(MultipartBun.persisted(this.source)));
|
|
261
260
|
return this.multipartEffect;
|
|
262
261
|
}
|
|
263
262
|
get multipartStream() {
|
|
264
|
-
return
|
|
263
|
+
return MultipartBun.stream(this.source);
|
|
265
264
|
}
|
|
266
265
|
arrayBufferEffect;
|
|
267
266
|
get arrayBuffer() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"httpServer.js","names":["MultipartNode","_interopRequireWildcard","require","Cookies","Etag","FetchHttpClient","Headers","App","IncomingMessage","Server","Error","ServerRequest","Socket","UrlParams","Config","Deferred","Effect","Exit","FiberSet","Inspectable","Layer","Option","Stream","_nodeStream","BunContext","Platform","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","make","options","gen","handlerStack","_request","_server","Response","status","server","Bun","serve","fetch","websocket","open","ws","unsafeDone","data","deferred","succeed","message","run","close","code","closeReason","closeDeferred","defaultCloseCodeIsError","fail","SocketCloseError","reason","void","addFinalizer","sync","stop","address","_tag","port","hostname","httpApp","middleware","runFork","makeRuntime","runtime","app","toHandled","request","response","resolve","makeResponse","handler","Promise","_reject","fiber","provideService","HttpServerRequest","ServerRequestImpl","removeHost","url","signal","addEventListener","interruptAsFork","clientAbortFiberId","once","acquireRelease","push","reload","pop","length","exports","fields","headers","globalThis","isEmpty","cookies","header","toSetCookieHeaders","append","statusText","undefined","method","body","formData","toReadableStreamRuntime","stream","layerServer","scoped","HttpServer","layerContext","mergeAll","layer","layerWeak","layerTest","layerTestClient","pipe","provide","RequestInit","keepalive","provideMerge","layerConfig","flatMap","unwrap","wsDefaultRun","_","buffer","Class","source","bunServer","headersOverride","remoteAddressOverride","TypeId","constructor","toJSON","inspect","_id","originalUrl","modify","remoteAddress","toUpperCase","some","none","fromInput","cachedCookies","parseHeader","cookie","fromReadableStream","cause","RequestError","description","textEffect","text","runSync","cached","tryPromise","try","catch","json","tryMap","JSON","parse","urlParamsBody","URLSearchParams","multipartEffect","multipart","persisted","Readable","fromWeb","multipartStream","arrayBufferEffect","arrayBuffer","upgrade","all","makeSemaphore","semaphore","async","resume","success","map","await","write","chunk","sendText","isCloseEvent","sendBinary","writer","runRaw","result","isEffect","forEach","join","onExit","exit","raceFirst","withPermits","encoder","TextEncoder","encode","of","index","indexOf","slice","requestSource","self"],"sources":["../../../src/internal/httpServer.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"httpServer.js","names":["Cookies","_interopRequireWildcard","require","Etag","FetchHttpClient","Headers","App","IncomingMessage","Server","Error","ServerRequest","Socket","UrlParams","Config","Deferred","Effect","Exit","FiberSet","Inspectable","Layer","Option","Stream","BunContext","Platform","MultipartBun","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","make","options","gen","handlerStack","_request","_server","Response","status","server","Bun","serve","fetch","websocket","open","ws","unsafeDone","data","deferred","succeed","message","run","close","code","closeReason","closeDeferred","defaultCloseCodeIsError","fail","SocketCloseError","reason","void","addFinalizer","sync","stop","address","_tag","port","hostname","httpApp","middleware","runFork","makeRuntime","runtime","app","toHandled","request","response","resolve","makeResponse","handler","Promise","_reject","fiber","provideService","HttpServerRequest","ServerRequestImpl","removeHost","url","signal","addEventListener","interruptAsFork","clientAbortFiberId","once","acquireRelease","push","reload","pop","length","exports","fields","headers","globalThis","isEmpty","cookies","header","toSetCookieHeaders","append","statusText","undefined","method","body","formData","toReadableStreamRuntime","stream","layerServer","scoped","HttpServer","layerContext","mergeAll","layer","layerWeak","layerTest","layerTestClient","pipe","provide","RequestInit","keepalive","provideMerge","layerConfig","flatMap","unwrap","wsDefaultRun","_","buffer","Class","source","bunServer","headersOverride","remoteAddressOverride","TypeId","constructor","toJSON","inspect","_id","originalUrl","modify","remoteAddress","toUpperCase","some","none","fromInput","cachedCookies","parseHeader","cookie","fromReadableStream","cause","RequestError","description","textEffect","text","runSync","cached","tryPromise","try","catch","json","tryMap","JSON","parse","urlParamsBody","URLSearchParams","multipartEffect","multipart","persisted","multipartStream","arrayBufferEffect","arrayBuffer","upgrade","all","makeSemaphore","semaphore","async","resume","success","map","await","write","chunk","sendText","isCloseEvent","sendBinary","writer","runRaw","result","isEffect","forEach","join","onExit","exit","raceFirst","withPermits","encoder","TextEncoder","encode","of","index","indexOf","slice","requestSource","self"],"sources":["../../../src/internal/httpServer.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,155 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.stream = exports.persisted = 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/web"));
|
|
14
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
15
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
16
|
+
/** @internal */
|
|
17
|
+
const stream = source => (0, _Function.pipe)(Multipart.makeConfig({}), Effect.map(config => {
|
|
18
|
+
const parser = MP.make({
|
|
19
|
+
...config,
|
|
20
|
+
headers: source.headers
|
|
21
|
+
});
|
|
22
|
+
return Stream.fromReadableStream(() => source.body.pipeThrough(parser), cause => convertError(cause));
|
|
23
|
+
}), Stream.unwrap, Stream.map(convertPart));
|
|
24
|
+
/** @internal */
|
|
25
|
+
exports.stream = stream;
|
|
26
|
+
const persisted = source => Multipart.toPersisted(stream(source), (path, file) => Effect.tryPromise({
|
|
27
|
+
try: async () => {
|
|
28
|
+
const fileImpl = file;
|
|
29
|
+
const writer = Bun.file(path).writer();
|
|
30
|
+
const reader = fileImpl.file.readable.getReader();
|
|
31
|
+
try {
|
|
32
|
+
while (true) {
|
|
33
|
+
const {
|
|
34
|
+
done,
|
|
35
|
+
value
|
|
36
|
+
} = await reader.readMany();
|
|
37
|
+
if (done) break;
|
|
38
|
+
for (const chunk of value) {
|
|
39
|
+
writer.write(chunk);
|
|
40
|
+
}
|
|
41
|
+
await writer.flush();
|
|
42
|
+
}
|
|
43
|
+
} finally {
|
|
44
|
+
reader.cancel();
|
|
45
|
+
await writer.end();
|
|
46
|
+
}
|
|
47
|
+
},
|
|
48
|
+
catch: cause => new Multipart.MultipartError({
|
|
49
|
+
reason: "InternalError",
|
|
50
|
+
cause
|
|
51
|
+
})
|
|
52
|
+
}));
|
|
53
|
+
exports.persisted = persisted;
|
|
54
|
+
const convertPart = part => part._tag === "Field" ? new FieldImpl(part.info, part.value) : new FileImpl(part);
|
|
55
|
+
class PartBase extends Inspectable.Class {
|
|
56
|
+
[Multipart.TypeId];
|
|
57
|
+
constructor() {
|
|
58
|
+
super();
|
|
59
|
+
this[Multipart.TypeId] = Multipart.TypeId;
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
class FieldImpl extends PartBase {
|
|
63
|
+
_tag = "Field";
|
|
64
|
+
key;
|
|
65
|
+
contentType;
|
|
66
|
+
value;
|
|
67
|
+
constructor(info, value) {
|
|
68
|
+
super();
|
|
69
|
+
this.key = info.name;
|
|
70
|
+
this.contentType = info.contentType;
|
|
71
|
+
this.value = (0, _multipasta.decodeField)(info, value);
|
|
72
|
+
}
|
|
73
|
+
toJSON() {
|
|
74
|
+
return {
|
|
75
|
+
_id: "@effect/platform/Multipart/Part",
|
|
76
|
+
_tag: "Field",
|
|
77
|
+
key: this.key,
|
|
78
|
+
value: this.value,
|
|
79
|
+
contentType: this.contentType
|
|
80
|
+
};
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
class FileImpl extends PartBase {
|
|
84
|
+
file;
|
|
85
|
+
_tag = "File";
|
|
86
|
+
key;
|
|
87
|
+
name;
|
|
88
|
+
contentType;
|
|
89
|
+
content;
|
|
90
|
+
constructor(file) {
|
|
91
|
+
super();
|
|
92
|
+
this.file = file;
|
|
93
|
+
this.key = file.info.name;
|
|
94
|
+
this.name = file.info.filename ?? file.info.name;
|
|
95
|
+
this.contentType = file.info.contentType;
|
|
96
|
+
this.content = Stream.fromReadableStream(() => file.readable, cause => new Multipart.MultipartError({
|
|
97
|
+
reason: "InternalError",
|
|
98
|
+
cause
|
|
99
|
+
}));
|
|
100
|
+
}
|
|
101
|
+
toJSON() {
|
|
102
|
+
return {
|
|
103
|
+
_id: "@effect/platform/Multipart/Part",
|
|
104
|
+
_tag: "File",
|
|
105
|
+
key: this.key,
|
|
106
|
+
name: this.name,
|
|
107
|
+
contentType: this.contentType
|
|
108
|
+
};
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
function convertError(cause) {
|
|
112
|
+
switch (cause._tag) {
|
|
113
|
+
case "ReachedLimit":
|
|
114
|
+
{
|
|
115
|
+
switch (cause.limit) {
|
|
116
|
+
case "MaxParts":
|
|
117
|
+
{
|
|
118
|
+
return new Multipart.MultipartError({
|
|
119
|
+
reason: "TooManyParts",
|
|
120
|
+
cause
|
|
121
|
+
});
|
|
122
|
+
}
|
|
123
|
+
case "MaxFieldSize":
|
|
124
|
+
{
|
|
125
|
+
return new Multipart.MultipartError({
|
|
126
|
+
reason: "FieldTooLarge",
|
|
127
|
+
cause
|
|
128
|
+
});
|
|
129
|
+
}
|
|
130
|
+
case "MaxPartSize":
|
|
131
|
+
{
|
|
132
|
+
return new Multipart.MultipartError({
|
|
133
|
+
reason: "FileTooLarge",
|
|
134
|
+
cause
|
|
135
|
+
});
|
|
136
|
+
}
|
|
137
|
+
case "MaxTotalSize":
|
|
138
|
+
{
|
|
139
|
+
return new Multipart.MultipartError({
|
|
140
|
+
reason: "BodyTooLarge",
|
|
141
|
+
cause
|
|
142
|
+
});
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
default:
|
|
147
|
+
{
|
|
148
|
+
return new Multipart.MultipartError({
|
|
149
|
+
reason: "Parse",
|
|
150
|
+
cause
|
|
151
|
+
});
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
}
|
|
155
|
+
//# sourceMappingURL=multipart.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"multipart.js","names":["Multipart","_interopRequireWildcard","require","Effect","_Function","Inspectable","Stream","_multipasta","MP","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","stream","source","pipe","makeConfig","map","config","parser","make","headers","fromReadableStream","body","pipeThrough","cause","convertError","unwrap","convertPart","exports","persisted","toPersisted","path","file","tryPromise","try","fileImpl","writer","Bun","reader","readable","getReader","done","value","readMany","chunk","write","flush","cancel","end","catch","MultipartError","reason","part","_tag","FieldImpl","info","FileImpl","PartBase","Class","TypeId","constructor","key","contentType","name","decodeField","toJSON","_id","content","filename","limit"],"sources":["../../../src/internal/multipart.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -1,8 +1,20 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* @since 1.0.0
|
|
3
3
|
*/
|
|
4
|
+
import type * as FileSystem from "@effect/platform/FileSystem";
|
|
5
|
+
import type * as Multipart from "@effect/platform/Multipart";
|
|
6
|
+
import type * as Path from "@effect/platform/Path";
|
|
7
|
+
import type * as Effect from "effect/Effect";
|
|
8
|
+
import type * as Scope from "effect/Scope";
|
|
9
|
+
import type * as Stream from "effect/Stream";
|
|
4
10
|
/**
|
|
5
11
|
* @since 1.0.0
|
|
12
|
+
* @category constructors
|
|
6
13
|
*/
|
|
7
|
-
export
|
|
14
|
+
export declare const stream: (source: Request) => Stream.Stream<Multipart.Part, Multipart.MultipartError>;
|
|
15
|
+
/**
|
|
16
|
+
* @since 1.0.0
|
|
17
|
+
* @category constructors
|
|
18
|
+
*/
|
|
19
|
+
export declare const persisted: (source: Request) => Effect.Effect<Multipart.Persisted, Multipart.MultipartError, FileSystem.FileSystem | Path.Path | Scope.Scope>;
|
|
8
20
|
//# sourceMappingURL=BunMultipart.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BunMultipart.d.ts","sourceRoot":"","sources":["../../src/BunMultipart.ts"],"names":[],"mappings":"AAAA;;GAEG;
|
|
1
|
+
{"version":3,"file":"BunMultipart.d.ts","sourceRoot":"","sources":["../../src/BunMultipart.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,KAAK,UAAU,MAAM,6BAA6B,CAAA;AAC9D,OAAO,KAAK,KAAK,SAAS,MAAM,4BAA4B,CAAA;AAC5D,OAAO,KAAK,KAAK,IAAI,MAAM,uBAAuB,CAAA;AAClD,OAAO,KAAK,KAAK,MAAM,MAAM,eAAe,CAAA;AAC5C,OAAO,KAAK,KAAK,KAAK,MAAM,cAAc,CAAA;AAC1C,OAAO,KAAK,KAAK,MAAM,MAAM,eAAe,CAAA;AAG5C;;;GAGG;AACH,eAAO,MAAM,MAAM,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,EAAE,SAAS,CAAC,cAAc,CAAmB,CAAA;AAEnH;;;GAGG;AACH,eAAO,MAAM,SAAS,EAAE,CACtB,MAAM,EAAE,OAAO,KACZ,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,SAAS,EAAE,SAAS,CAAC,cAAc,EAAE,UAAU,CAAC,UAAU,GAAG,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC,KAAK,CAC7F,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"multipart.d.ts","sourceRoot":"","sources":["../../../src/internal/multipart.ts"],"names":[],"mappings":""}
|
package/dist/esm/BunMultipart.js
CHANGED
|
@@ -1,8 +1,12 @@
|
|
|
1
|
+
import * as internal from "./internal/multipart.js";
|
|
1
2
|
/**
|
|
2
3
|
* @since 1.0.0
|
|
4
|
+
* @category constructors
|
|
3
5
|
*/
|
|
6
|
+
export const stream = internal.stream;
|
|
4
7
|
/**
|
|
5
8
|
* @since 1.0.0
|
|
9
|
+
* @category constructors
|
|
6
10
|
*/
|
|
7
|
-
export
|
|
11
|
+
export const persisted = internal.persisted;
|
|
8
12
|
//# sourceMappingURL=BunMultipart.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BunMultipart.js","names":[],"sources":["../../src/BunMultipart.ts"],"sourcesContent":[null],"mappings":"
|
|
1
|
+
{"version":3,"file":"BunMultipart.js","names":["internal","stream","persisted"],"sources":["../../src/BunMultipart.ts"],"sourcesContent":[null],"mappings":"AASA,OAAO,KAAKA,QAAQ,MAAM,yBAAyB;AAEnD;;;;AAIA,OAAO,MAAMC,MAAM,GAAiFD,QAAQ,CAACC,MAAM;AAEnH;;;;AAIA,OAAO,MAAMC,SAAS,GAGpBF,QAAQ,CAACE,SAAS","ignoreList":[]}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import * as MultipartNode from "@effect/platform-node-shared/NodeMultipart";
|
|
2
1
|
import * as Cookies from "@effect/platform/Cookies";
|
|
3
2
|
import * as Etag from "@effect/platform/Etag";
|
|
4
3
|
import * as FetchHttpClient from "@effect/platform/FetchHttpClient";
|
|
@@ -19,9 +18,9 @@ import * as Inspectable from "effect/Inspectable";
|
|
|
19
18
|
import * as Layer from "effect/Layer";
|
|
20
19
|
import * as Option from "effect/Option";
|
|
21
20
|
import * as Stream from "effect/Stream";
|
|
22
|
-
import { Readable } from "node:stream";
|
|
23
21
|
import * as BunContext from "../BunContext.js";
|
|
24
22
|
import * as Platform from "../BunHttpPlatform.js";
|
|
23
|
+
import * as MultipartBun from "./multipart.js";
|
|
25
24
|
/** @internal */
|
|
26
25
|
export const make = options => Effect.gen(function* () {
|
|
27
26
|
const handlerStack = [function (_request, _server) {
|
|
@@ -245,11 +244,11 @@ class ServerRequestImpl extends Inspectable.Class {
|
|
|
245
244
|
if (this.multipartEffect) {
|
|
246
245
|
return this.multipartEffect;
|
|
247
246
|
}
|
|
248
|
-
this.multipartEffect = Effect.runSync(Effect.cached(
|
|
247
|
+
this.multipartEffect = Effect.runSync(Effect.cached(MultipartBun.persisted(this.source)));
|
|
249
248
|
return this.multipartEffect;
|
|
250
249
|
}
|
|
251
250
|
get multipartStream() {
|
|
252
|
-
return
|
|
251
|
+
return MultipartBun.stream(this.source);
|
|
253
252
|
}
|
|
254
253
|
arrayBufferEffect;
|
|
255
254
|
get arrayBuffer() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"httpServer.js","names":["MultipartNode","Cookies","Etag","FetchHttpClient","Headers","App","IncomingMessage","Server","Error","ServerRequest","Socket","UrlParams","Config","Deferred","Effect","Exit","FiberSet","Inspectable","Layer","Option","Stream","Readable","BunContext","Platform","make","options","gen","handlerStack","_request","_server","Response","status","server","Bun","serve","fetch","websocket","open","ws","unsafeDone","data","deferred","succeed","message","run","close","code","closeReason","closeDeferred","defaultCloseCodeIsError","fail","SocketCloseError","reason","void","addFinalizer","sync","stop","address","_tag","port","hostname","httpApp","middleware","runFork","makeRuntime","runtime","app","toHandled","request","response","resolve","makeResponse","handler","Promise","_reject","fiber","provideService","HttpServerRequest","ServerRequestImpl","removeHost","url","signal","addEventListener","interruptAsFork","clientAbortFiberId","once","acquireRelease","push","reload","pop","length","fields","headers","globalThis","isEmpty","cookies","header","toSetCookieHeaders","append","statusText","undefined","method","body","formData","toReadableStreamRuntime","stream","layerServer","scoped","HttpServer","layerContext","mergeAll","layer","layerWeak","layerTest","layerTestClient","pipe","provide","RequestInit","keepalive","provideMerge","layerConfig","flatMap","unwrap","wsDefaultRun","_","buffer","Class","source","bunServer","headersOverride","remoteAddressOverride","TypeId","constructor","toJSON","inspect","_id","originalUrl","modify","remoteAddress","toUpperCase","some","none","fromInput","cachedCookies","parseHeader","cookie","fromReadableStream","cause","RequestError","description","textEffect","text","runSync","cached","tryPromise","try","catch","json","tryMap","JSON","parse","urlParamsBody","URLSearchParams","multipartEffect","multipart","persisted","fromWeb","multipartStream","arrayBufferEffect","arrayBuffer","upgrade","all","makeSemaphore","semaphore","async","resume","success","map","await","write","chunk","sendText","isCloseEvent","sendBinary","writer","runRaw","set","result","isEffect","forEach","join","onExit","exit","raceFirst","withPermits","encoder","TextEncoder","encode","of","index","indexOf","slice","requestSource","self"],"sources":["../../../src/internal/httpServer.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"httpServer.js","names":["Cookies","Etag","FetchHttpClient","Headers","App","IncomingMessage","Server","Error","ServerRequest","Socket","UrlParams","Config","Deferred","Effect","Exit","FiberSet","Inspectable","Layer","Option","Stream","BunContext","Platform","MultipartBun","make","options","gen","handlerStack","_request","_server","Response","status","server","Bun","serve","fetch","websocket","open","ws","unsafeDone","data","deferred","succeed","message","run","close","code","closeReason","closeDeferred","defaultCloseCodeIsError","fail","SocketCloseError","reason","void","addFinalizer","sync","stop","address","_tag","port","hostname","httpApp","middleware","runFork","makeRuntime","runtime","app","toHandled","request","response","resolve","makeResponse","handler","Promise","_reject","fiber","provideService","HttpServerRequest","ServerRequestImpl","removeHost","url","signal","addEventListener","interruptAsFork","clientAbortFiberId","once","acquireRelease","push","reload","pop","length","fields","headers","globalThis","isEmpty","cookies","header","toSetCookieHeaders","append","statusText","undefined","method","body","formData","toReadableStreamRuntime","stream","layerServer","scoped","HttpServer","layerContext","mergeAll","layer","layerWeak","layerTest","layerTestClient","pipe","provide","RequestInit","keepalive","provideMerge","layerConfig","flatMap","unwrap","wsDefaultRun","_","buffer","Class","source","bunServer","headersOverride","remoteAddressOverride","TypeId","constructor","toJSON","inspect","_id","originalUrl","modify","remoteAddress","toUpperCase","some","none","fromInput","cachedCookies","parseHeader","cookie","fromReadableStream","cause","RequestError","description","textEffect","text","runSync","cached","tryPromise","try","catch","json","tryMap","JSON","parse","urlParamsBody","URLSearchParams","multipartEffect","multipart","persisted","multipartStream","arrayBufferEffect","arrayBuffer","upgrade","all","makeSemaphore","semaphore","async","resume","success","map","await","write","chunk","sendText","isCloseEvent","sendBinary","writer","runRaw","set","result","isEffect","forEach","join","onExit","exit","raceFirst","withPermits","encoder","TextEncoder","encode","of","index","indexOf","slice","requestSource","self"],"sources":["../../../src/internal/httpServer.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,145 @@
|
|
|
1
|
+
import * as Multipart from "@effect/platform/Multipart";
|
|
2
|
+
import * as Effect from "effect/Effect";
|
|
3
|
+
import { pipe } from "effect/Function";
|
|
4
|
+
import * as Inspectable from "effect/Inspectable";
|
|
5
|
+
import * as Stream from "effect/Stream";
|
|
6
|
+
import { decodeField } from "multipasta";
|
|
7
|
+
import * as MP from "multipasta/web";
|
|
8
|
+
/** @internal */
|
|
9
|
+
export const stream = source => pipe(Multipart.makeConfig({}), Effect.map(config => {
|
|
10
|
+
const parser = MP.make({
|
|
11
|
+
...config,
|
|
12
|
+
headers: source.headers
|
|
13
|
+
});
|
|
14
|
+
return Stream.fromReadableStream(() => source.body.pipeThrough(parser), cause => convertError(cause));
|
|
15
|
+
}), Stream.unwrap, Stream.map(convertPart));
|
|
16
|
+
/** @internal */
|
|
17
|
+
export const persisted = source => Multipart.toPersisted(stream(source), (path, file) => Effect.tryPromise({
|
|
18
|
+
try: async () => {
|
|
19
|
+
const fileImpl = file;
|
|
20
|
+
const writer = Bun.file(path).writer();
|
|
21
|
+
const reader = fileImpl.file.readable.getReader();
|
|
22
|
+
try {
|
|
23
|
+
while (true) {
|
|
24
|
+
const {
|
|
25
|
+
done,
|
|
26
|
+
value
|
|
27
|
+
} = await reader.readMany();
|
|
28
|
+
if (done) break;
|
|
29
|
+
for (const chunk of value) {
|
|
30
|
+
writer.write(chunk);
|
|
31
|
+
}
|
|
32
|
+
await writer.flush();
|
|
33
|
+
}
|
|
34
|
+
} finally {
|
|
35
|
+
reader.cancel();
|
|
36
|
+
await writer.end();
|
|
37
|
+
}
|
|
38
|
+
},
|
|
39
|
+
catch: cause => new Multipart.MultipartError({
|
|
40
|
+
reason: "InternalError",
|
|
41
|
+
cause
|
|
42
|
+
})
|
|
43
|
+
}));
|
|
44
|
+
const convertPart = part => part._tag === "Field" ? new FieldImpl(part.info, part.value) : new FileImpl(part);
|
|
45
|
+
class PartBase extends Inspectable.Class {
|
|
46
|
+
[Multipart.TypeId];
|
|
47
|
+
constructor() {
|
|
48
|
+
super();
|
|
49
|
+
this[Multipart.TypeId] = Multipart.TypeId;
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
class FieldImpl extends PartBase {
|
|
53
|
+
_tag = "Field";
|
|
54
|
+
key;
|
|
55
|
+
contentType;
|
|
56
|
+
value;
|
|
57
|
+
constructor(info, value) {
|
|
58
|
+
super();
|
|
59
|
+
this.key = info.name;
|
|
60
|
+
this.contentType = info.contentType;
|
|
61
|
+
this.value = decodeField(info, value);
|
|
62
|
+
}
|
|
63
|
+
toJSON() {
|
|
64
|
+
return {
|
|
65
|
+
_id: "@effect/platform/Multipart/Part",
|
|
66
|
+
_tag: "Field",
|
|
67
|
+
key: this.key,
|
|
68
|
+
value: this.value,
|
|
69
|
+
contentType: this.contentType
|
|
70
|
+
};
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
class FileImpl extends PartBase {
|
|
74
|
+
file;
|
|
75
|
+
_tag = "File";
|
|
76
|
+
key;
|
|
77
|
+
name;
|
|
78
|
+
contentType;
|
|
79
|
+
content;
|
|
80
|
+
constructor(file) {
|
|
81
|
+
super();
|
|
82
|
+
this.file = file;
|
|
83
|
+
this.key = file.info.name;
|
|
84
|
+
this.name = file.info.filename ?? file.info.name;
|
|
85
|
+
this.contentType = file.info.contentType;
|
|
86
|
+
this.content = Stream.fromReadableStream(() => file.readable, cause => new Multipart.MultipartError({
|
|
87
|
+
reason: "InternalError",
|
|
88
|
+
cause
|
|
89
|
+
}));
|
|
90
|
+
}
|
|
91
|
+
toJSON() {
|
|
92
|
+
return {
|
|
93
|
+
_id: "@effect/platform/Multipart/Part",
|
|
94
|
+
_tag: "File",
|
|
95
|
+
key: this.key,
|
|
96
|
+
name: this.name,
|
|
97
|
+
contentType: this.contentType
|
|
98
|
+
};
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
function convertError(cause) {
|
|
102
|
+
switch (cause._tag) {
|
|
103
|
+
case "ReachedLimit":
|
|
104
|
+
{
|
|
105
|
+
switch (cause.limit) {
|
|
106
|
+
case "MaxParts":
|
|
107
|
+
{
|
|
108
|
+
return new Multipart.MultipartError({
|
|
109
|
+
reason: "TooManyParts",
|
|
110
|
+
cause
|
|
111
|
+
});
|
|
112
|
+
}
|
|
113
|
+
case "MaxFieldSize":
|
|
114
|
+
{
|
|
115
|
+
return new Multipart.MultipartError({
|
|
116
|
+
reason: "FieldTooLarge",
|
|
117
|
+
cause
|
|
118
|
+
});
|
|
119
|
+
}
|
|
120
|
+
case "MaxPartSize":
|
|
121
|
+
{
|
|
122
|
+
return new Multipart.MultipartError({
|
|
123
|
+
reason: "FileTooLarge",
|
|
124
|
+
cause
|
|
125
|
+
});
|
|
126
|
+
}
|
|
127
|
+
case "MaxTotalSize":
|
|
128
|
+
{
|
|
129
|
+
return new Multipart.MultipartError({
|
|
130
|
+
reason: "BodyTooLarge",
|
|
131
|
+
cause
|
|
132
|
+
});
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
default:
|
|
137
|
+
{
|
|
138
|
+
return new Multipart.MultipartError({
|
|
139
|
+
reason: "Parse",
|
|
140
|
+
cause
|
|
141
|
+
});
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
//# sourceMappingURL=multipart.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"multipart.js","names":["Multipart","Effect","pipe","Inspectable","Stream","decodeField","MP","stream","source","makeConfig","map","config","parser","make","headers","fromReadableStream","body","pipeThrough","cause","convertError","unwrap","convertPart","persisted","toPersisted","path","file","tryPromise","try","fileImpl","writer","Bun","reader","readable","getReader","done","value","readMany","chunk","write","flush","cancel","end","catch","MultipartError","reason","part","_tag","FieldImpl","info","FileImpl","PartBase","Class","TypeId","constructor","key","contentType","name","toJSON","_id","content","filename","limit"],"sources":["../../../src/internal/multipart.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@effect/platform-bun",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.50.0",
|
|
4
4
|
"description": "Platform specific implementations for the Bun runtime",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|
|
@@ -10,11 +10,12 @@
|
|
|
10
10
|
},
|
|
11
11
|
"sideEffects": [],
|
|
12
12
|
"dependencies": {
|
|
13
|
-
"
|
|
13
|
+
"multipasta": "^0.2.5",
|
|
14
|
+
"@effect/platform-node-shared": "^0.20.0"
|
|
14
15
|
},
|
|
15
16
|
"peerDependencies": {
|
|
16
|
-
"@effect/platform": "^0.
|
|
17
|
-
"effect": "^3.
|
|
17
|
+
"@effect/platform": "^0.70.0",
|
|
18
|
+
"effect": "^3.11.0"
|
|
18
19
|
},
|
|
19
20
|
"publishConfig": {
|
|
20
21
|
"provenance": true
|
package/src/BunMultipart.ts
CHANGED
|
@@ -1,8 +1,25 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* @since 1.0.0
|
|
3
3
|
*/
|
|
4
|
+
import type * as FileSystem from "@effect/platform/FileSystem"
|
|
5
|
+
import type * as Multipart from "@effect/platform/Multipart"
|
|
6
|
+
import type * as Path from "@effect/platform/Path"
|
|
7
|
+
import type * as Effect from "effect/Effect"
|
|
8
|
+
import type * as Scope from "effect/Scope"
|
|
9
|
+
import type * as Stream from "effect/Stream"
|
|
10
|
+
import * as internal from "./internal/multipart.js"
|
|
4
11
|
|
|
5
12
|
/**
|
|
6
13
|
* @since 1.0.0
|
|
14
|
+
* @category constructors
|
|
7
15
|
*/
|
|
8
|
-
export
|
|
16
|
+
export const stream: (source: Request) => Stream.Stream<Multipart.Part, Multipart.MultipartError> = internal.stream
|
|
17
|
+
|
|
18
|
+
/**
|
|
19
|
+
* @since 1.0.0
|
|
20
|
+
* @category constructors
|
|
21
|
+
*/
|
|
22
|
+
export const persisted: (
|
|
23
|
+
source: Request
|
|
24
|
+
) => Effect.Effect<Multipart.Persisted, Multipart.MultipartError, FileSystem.FileSystem | Path.Path | Scope.Scope> =
|
|
25
|
+
internal.persisted
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import * as MultipartNode from "@effect/platform-node-shared/NodeMultipart"
|
|
2
1
|
import * as Cookies from "@effect/platform/Cookies"
|
|
3
2
|
import * as Etag from "@effect/platform/Etag"
|
|
4
3
|
import * as FetchHttpClient from "@effect/platform/FetchHttpClient"
|
|
@@ -28,9 +27,9 @@ import type { ReadonlyRecord } from "effect/Record"
|
|
|
28
27
|
import type * as Runtime from "effect/Runtime"
|
|
29
28
|
import type * as Scope from "effect/Scope"
|
|
30
29
|
import * as Stream from "effect/Stream"
|
|
31
|
-
import { Readable } from "node:stream"
|
|
32
30
|
import * as BunContext from "../BunContext.js"
|
|
33
31
|
import * as Platform from "../BunHttpPlatform.js"
|
|
32
|
+
import * as MultipartBun from "./multipart.js"
|
|
34
33
|
|
|
35
34
|
/** @internal */
|
|
36
35
|
export const make = (
|
|
@@ -343,13 +342,13 @@ class ServerRequestImpl extends Inspectable.Class implements ServerRequest.HttpS
|
|
|
343
342
|
return this.multipartEffect
|
|
344
343
|
}
|
|
345
344
|
this.multipartEffect = Effect.runSync(Effect.cached(
|
|
346
|
-
|
|
345
|
+
MultipartBun.persisted(this.source)
|
|
347
346
|
))
|
|
348
347
|
return this.multipartEffect
|
|
349
348
|
}
|
|
350
349
|
|
|
351
350
|
get multipartStream(): Stream.Stream<Multipart.Part, Multipart.MultipartError> {
|
|
352
|
-
return
|
|
351
|
+
return MultipartBun.stream(this.source)
|
|
353
352
|
}
|
|
354
353
|
|
|
355
354
|
private arrayBufferEffect: Effect.Effect<ArrayBuffer, Error.RequestError> | undefined
|
|
@@ -0,0 +1,142 @@
|
|
|
1
|
+
import * as Multipart from "@effect/platform/Multipart"
|
|
2
|
+
import * as Effect from "effect/Effect"
|
|
3
|
+
import { pipe } from "effect/Function"
|
|
4
|
+
import * as Inspectable from "effect/Inspectable"
|
|
5
|
+
import * as Stream from "effect/Stream"
|
|
6
|
+
import type { MultipartError, PartInfo } from "multipasta"
|
|
7
|
+
import { decodeField } from "multipasta"
|
|
8
|
+
import * as MP from "multipasta/web"
|
|
9
|
+
|
|
10
|
+
/** @internal */
|
|
11
|
+
export const stream = (source: Request): Stream.Stream<Multipart.Part, Multipart.MultipartError> =>
|
|
12
|
+
pipe(
|
|
13
|
+
Multipart.makeConfig({}),
|
|
14
|
+
Effect.map((config) => {
|
|
15
|
+
const parser = MP.make({
|
|
16
|
+
...config,
|
|
17
|
+
headers: source.headers
|
|
18
|
+
})
|
|
19
|
+
return Stream.fromReadableStream(
|
|
20
|
+
() => source.body!.pipeThrough(parser),
|
|
21
|
+
(cause) => convertError(cause as MultipartError)
|
|
22
|
+
)
|
|
23
|
+
}),
|
|
24
|
+
Stream.unwrap,
|
|
25
|
+
Stream.map(convertPart)
|
|
26
|
+
)
|
|
27
|
+
|
|
28
|
+
/** @internal */
|
|
29
|
+
export const persisted = (source: Request) =>
|
|
30
|
+
Multipart.toPersisted(stream(source), (path, file) =>
|
|
31
|
+
Effect.tryPromise({
|
|
32
|
+
try: async () => {
|
|
33
|
+
const fileImpl = file as FileImpl
|
|
34
|
+
const writer = Bun.file(path).writer()
|
|
35
|
+
const reader = fileImpl.file.readable.getReader()
|
|
36
|
+
try {
|
|
37
|
+
while (true) {
|
|
38
|
+
const { done, value } = await reader.readMany()
|
|
39
|
+
if (done) break
|
|
40
|
+
for (const chunk of value) {
|
|
41
|
+
writer.write(chunk)
|
|
42
|
+
}
|
|
43
|
+
await writer.flush()
|
|
44
|
+
}
|
|
45
|
+
} finally {
|
|
46
|
+
reader.cancel()
|
|
47
|
+
await writer.end()
|
|
48
|
+
}
|
|
49
|
+
},
|
|
50
|
+
catch: (cause) => new Multipart.MultipartError({ reason: "InternalError", cause })
|
|
51
|
+
}))
|
|
52
|
+
|
|
53
|
+
const convertPart = (part: MP.Part): Multipart.Part =>
|
|
54
|
+
part._tag === "Field" ? new FieldImpl(part.info, part.value) : new FileImpl(part)
|
|
55
|
+
|
|
56
|
+
abstract class PartBase extends Inspectable.Class {
|
|
57
|
+
readonly [Multipart.TypeId]: Multipart.TypeId
|
|
58
|
+
constructor() {
|
|
59
|
+
super()
|
|
60
|
+
this[Multipart.TypeId] = Multipart.TypeId
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
class FieldImpl extends PartBase implements Multipart.Field {
|
|
65
|
+
readonly _tag = "Field"
|
|
66
|
+
readonly key: string
|
|
67
|
+
readonly contentType: string
|
|
68
|
+
readonly value: string
|
|
69
|
+
|
|
70
|
+
constructor(
|
|
71
|
+
info: PartInfo,
|
|
72
|
+
value: Uint8Array
|
|
73
|
+
) {
|
|
74
|
+
super()
|
|
75
|
+
this.key = info.name
|
|
76
|
+
this.contentType = info.contentType
|
|
77
|
+
this.value = decodeField(info, value)
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
toJSON(): unknown {
|
|
81
|
+
return {
|
|
82
|
+
_id: "@effect/platform/Multipart/Part",
|
|
83
|
+
_tag: "Field",
|
|
84
|
+
key: this.key,
|
|
85
|
+
value: this.value,
|
|
86
|
+
contentType: this.contentType
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
class FileImpl extends PartBase implements Multipart.File {
|
|
92
|
+
readonly _tag = "File"
|
|
93
|
+
readonly key: string
|
|
94
|
+
readonly name: string
|
|
95
|
+
readonly contentType: string
|
|
96
|
+
readonly content: Stream.Stream<Uint8Array, Multipart.MultipartError>
|
|
97
|
+
|
|
98
|
+
constructor(readonly file: MP.File) {
|
|
99
|
+
super()
|
|
100
|
+
this.key = file.info.name
|
|
101
|
+
this.name = file.info.filename ?? file.info.name
|
|
102
|
+
this.contentType = file.info.contentType
|
|
103
|
+
this.content = Stream.fromReadableStream(
|
|
104
|
+
() => file.readable,
|
|
105
|
+
(cause) => new Multipart.MultipartError({ reason: "InternalError", cause })
|
|
106
|
+
)
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
toJSON(): unknown {
|
|
110
|
+
return {
|
|
111
|
+
_id: "@effect/platform/Multipart/Part",
|
|
112
|
+
_tag: "File",
|
|
113
|
+
key: this.key,
|
|
114
|
+
name: this.name,
|
|
115
|
+
contentType: this.contentType
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
function convertError(cause: MultipartError): Multipart.MultipartError {
|
|
121
|
+
switch (cause._tag) {
|
|
122
|
+
case "ReachedLimit": {
|
|
123
|
+
switch (cause.limit) {
|
|
124
|
+
case "MaxParts": {
|
|
125
|
+
return new Multipart.MultipartError({ reason: "TooManyParts", cause })
|
|
126
|
+
}
|
|
127
|
+
case "MaxFieldSize": {
|
|
128
|
+
return new Multipart.MultipartError({ reason: "FieldTooLarge", cause })
|
|
129
|
+
}
|
|
130
|
+
case "MaxPartSize": {
|
|
131
|
+
return new Multipart.MultipartError({ reason: "FileTooLarge", cause })
|
|
132
|
+
}
|
|
133
|
+
case "MaxTotalSize": {
|
|
134
|
+
return new Multipart.MultipartError({ reason: "BodyTooLarge", cause })
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
default: {
|
|
139
|
+
return new Multipart.MultipartError({ reason: "Parse", cause })
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
}
|