dfx 0.118.13 → 0.118.14
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/DiscordGateway/Sharder.d.ts +1 -1
- package/DiscordREST.d.ts.map +1 -1
- package/DiscordREST.js +19 -18
- package/DiscordREST.js.map +1 -1
- package/mjs/DiscordREST.mjs +19 -18
- package/mjs/DiscordREST.mjs.map +1 -1
- package/mjs/version.mjs +1 -1
- package/package.json +2 -2
- package/src/DiscordREST.ts +30 -27
- package/src/version.ts +1 -1
- package/version.d.ts +1 -1
- package/version.js +1 -1
|
@@ -10,5 +10,5 @@ export interface Sharder {
|
|
|
10
10
|
export declare const Sharder: import("effect/Context").Tag<Sharder, {
|
|
11
11
|
readonly shards: Effect.Effect<HashSet.HashSet<RunningShard>, never, never>;
|
|
12
12
|
}>;
|
|
13
|
-
export declare const SharderLive: Layer.Layer<Sharder, never, DiscordConfig | import("@effect/platform/HttpClient").HttpClient | import("dfx/RateLimit").RateLimitStore | import("./
|
|
13
|
+
export declare const SharderLive: Layer.Layer<Sharder, never, DiscordConfig | import("@effect/platform/HttpClient").HttpClient | import("dfx/RateLimit").RateLimitStore | ShardStore | import("./Shard/StateStore").ShardStateStore | import("./DiscordWS").DiscordWSCodec | import("@effect/platform/Socket").WebSocketConstructor>;
|
|
14
14
|
//# sourceMappingURL=Sharder.d.ts.map
|
package/DiscordREST.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DiscordREST.d.ts","sourceRoot":"","sources":["./src/DiscordREST.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,UAAU,MAAM,6BAA6B,CAAA;AAGzD,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AAMjD,OAAO,EAAE,cAAc,EAAgC,MAAM,eAAe,CAAA;AAC5E,OAAO,KAAK,OAAO,MAAM,WAAW,CAAA;AAKpC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAEvC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AAKrC,OAAO,KAAK,OAAO,MAAM,gBAAgB,CAAA;;
|
|
1
|
+
{"version":3,"file":"DiscordREST.d.ts","sourceRoot":"","sources":["./src/DiscordREST.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,UAAU,MAAM,6BAA6B,CAAA;AAGzD,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AAMjD,OAAO,EAAE,cAAc,EAAgC,MAAM,eAAe,CAAA;AAC5E,OAAO,KAAK,OAAO,MAAM,WAAW,CAAA;AAKpC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAEvC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AAKrC,OAAO,KAAK,OAAO,MAAM,gBAAgB,CAAA;;AA4MzC,qBAAa,eAAgB,SAAQ,oBAGlC;CAAG;AAEN,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,CAAC,EAAE,OAAO,MAAM,CAAA;CAC1B;AAED,MAAM,WAAW,kBAAmB,SAAQ,OAAO,CAAC,WAAW;IAC7D,YAAY,CACV,QAAQ,EAAE,QAAQ,GACjB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;IACtE,SAAS,CACP,KAAK,EAAE,aAAa,CAAC,IAAI,CAAC,GACzB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;CACvE;AAED,eAAO,MAAM,WAAW,8CAEvB,CAAA;AACD,eAAO,MAAM,eAAe,EAAE,KAAK,CAAC,KAAK,CACvC,WAAW,EACX,KAAK,EACL,aAAa,GAAG,UAAU,CAAC,UAAU,GAAG,cAAc,CACgB,CAAA"}
|
package/DiscordREST.js
CHANGED
|
@@ -72,23 +72,7 @@ const make = /*#__PURE__*/Effect.gen(function* () {
|
|
|
72
72
|
}
|
|
73
73
|
for (const fiber of fibers) yield* fiber.await;
|
|
74
74
|
});
|
|
75
|
-
const httpClient = (yield* HttpClient.HttpClient).pipe(HttpClient.mapRequestEffect(
|
|
76
|
-
const fiber = Option.getOrThrow(Fiber.getCurrentFiber());
|
|
77
|
-
let request = req.pipe(HttpRequest.prependUrl(rest.baseUrl), HttpRequest.setHeaders({
|
|
78
|
-
Authorization: `Bot ${Redacted.value(token)}`,
|
|
79
|
-
"User-Agent": `DiscordBot (https://github.com/tim-smart/dfx, ${_version.LIB_VERSION})`
|
|
80
|
-
}));
|
|
81
|
-
const formData = Context.getOption(fiber.currentContext, DiscordFormData);
|
|
82
|
-
if (Option.isSome(formData)) {
|
|
83
|
-
if (request.body._tag === "Uint8Array") {
|
|
84
|
-
formData.value.set("payload_json", new Blob([request.body.body], {
|
|
85
|
-
type: "application/json"
|
|
86
|
-
}), "");
|
|
87
|
-
}
|
|
88
|
-
request = _index.HttpClientRequest.setBody(request, HttpBody.formData(formData.value));
|
|
89
|
-
}
|
|
90
|
-
return requestRateLimit(request.url, request).pipe(Effect.zipLeft(globalRateLimit), Effect.as(request));
|
|
91
|
-
}), HttpClient.transformResponse((0, _Function.flow)(Effect.tap(response => updateBuckets(response.request, response)), Effect.flatMap(response => {
|
|
75
|
+
const httpClient = (yield* HttpClient.HttpClient).pipe(HttpClient.mapRequestEffect(request => requestRateLimit(request.url, request).pipe(Effect.zipLeft(globalRateLimit), Effect.as(request))), HttpClient.transformResponse((0, _Function.flow)(Effect.tap(response => updateBuckets(response.request, response)), Effect.flatMap(response => {
|
|
92
76
|
const request = response.request;
|
|
93
77
|
switch (response.status) {
|
|
94
78
|
case 403:
|
|
@@ -104,8 +88,25 @@ const make = /*#__PURE__*/Effect.gen(function* () {
|
|
|
104
88
|
package: "dfx",
|
|
105
89
|
module: "DiscordREST"
|
|
106
90
|
}))));
|
|
91
|
+
const httpClientTransformed = HttpClient.mapRequestInput(httpClient, req => {
|
|
92
|
+
const fiber = Option.getOrThrow(Fiber.getCurrentFiber());
|
|
93
|
+
let request = req.pipe(HttpRequest.prependUrl(rest.baseUrl), HttpRequest.setHeaders({
|
|
94
|
+
Authorization: `Bot ${Redacted.value(token)}`,
|
|
95
|
+
"User-Agent": `DiscordBot (https://github.com/tim-smart/dfx, ${_version.LIB_VERSION})`
|
|
96
|
+
}));
|
|
97
|
+
const formData = Context.getOption(fiber.currentContext, DiscordFormData);
|
|
98
|
+
if (Option.isSome(formData)) {
|
|
99
|
+
if (request.body._tag === "Uint8Array") {
|
|
100
|
+
formData.value.set("payload_json", new Blob([request.body.body], {
|
|
101
|
+
type: "application/json"
|
|
102
|
+
}), "");
|
|
103
|
+
}
|
|
104
|
+
request = _index.HttpClientRequest.setBody(request, HttpBody.formData(formData.value));
|
|
105
|
+
}
|
|
106
|
+
return request;
|
|
107
|
+
});
|
|
107
108
|
return DiscordREST.of({
|
|
108
|
-
...Discord.make(
|
|
109
|
+
...Discord.make(httpClientTransformed),
|
|
109
110
|
withFormData(formData) {
|
|
110
111
|
return Effect.provideService(DiscordFormData, formData);
|
|
111
112
|
},
|
package/DiscordREST.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DiscordREST.js","names":["HttpBody","_interopRequireWildcard","require","HttpClient","HttpRequest","_DiscordConfig","_utils","_RateLimit","Discord","_version","_Context","Context","_Duration","Duration","Effect","HashSet","Layer","Option","Ref","Redacted","_Function","Fiber","_index","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","make","gen","rest","token","DiscordConfig","store","RateLimitStore","maybeWait","RateLimiter","globalRateLimit","decode","window","limit","badRoutesRef","empty","tenMinutes","toMillis","minutes","addBadRoute","route","logDebug","pipe","zipRight","update","add","incrementCounter","annotateLogs","isBadRoute","map","removeBadRoute","remove","invalidRateLimit","tap","invalid","void","asVoid","requestRateLimit","fnUntraced","path","request","routeFromConfig","method","maybeBucket","getBucketForRoute","isNone","bucket","value","key","millis","resetAfter","updateBuckets","response","url","rateLimitOption","rateLimitFromHeaders","headers","rateLimit","hasBucket","fibers","push","fork","putBucketRoute","remaining","removeCounter","putBucket","retryAfter","fiber","await","httpClient","mapRequestEffect","
|
|
1
|
+
{"version":3,"file":"DiscordREST.js","names":["HttpBody","_interopRequireWildcard","require","HttpClient","HttpRequest","_DiscordConfig","_utils","_RateLimit","Discord","_version","_Context","Context","_Duration","Duration","Effect","HashSet","Layer","Option","Ref","Redacted","_Function","Fiber","_index","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","make","gen","rest","token","DiscordConfig","store","RateLimitStore","maybeWait","RateLimiter","globalRateLimit","decode","window","limit","badRoutesRef","empty","tenMinutes","toMillis","minutes","addBadRoute","route","logDebug","pipe","zipRight","update","add","incrementCounter","annotateLogs","isBadRoute","map","removeBadRoute","remove","invalidRateLimit","tap","invalid","void","asVoid","requestRateLimit","fnUntraced","path","request","routeFromConfig","method","maybeBucket","getBucketForRoute","isNone","bucket","value","key","millis","resetAfter","updateBuckets","response","url","rateLimitOption","rateLimitFromHeaders","headers","rateLimit","hasBucket","fibers","push","fork","putBucketRoute","remaining","removeCounter","putBucket","retryAfter","fiber","await","httpClient","mapRequestEffect","zipLeft","as","transformResponse","flow","flatMap","status","all","concurrency","discard","sleep","getOrElse","seconds","execute","succeed","package","module","httpClientTransformed","mapRequestInput","req","getOrThrow","getCurrentFiber","prependUrl","baseUrl","setHeaders","Authorization","LIB_VERSION","formData","getOption","currentContext","DiscordFormData","isSome","body","_tag","Blob","type","HttpClientRequest","setBody","DiscordREST","of","withFormData","provideService","withFiles","files","effect","suspend","FormData","length","append","Tag","exports","GenericTag","DiscordRESTLive","provide","RateLimiterLive"],"sources":["./src/DiscordREST.ts"],"sourcesContent":[null],"mappings":";;;;;;AAAA,IAAAA,QAAA,gBAAAC,uBAAA,cAAAC,OAAA;AACA,IAAAC,UAAA,gBAAAF,uBAAA,cAAAC,OAAA;AACA,IAAAE,WAAA,gBAAAH,uBAAA,cAAAC,OAAA;AAEA,IAAAG,cAAA,gBAAAH,OAAA;AACA,IAAAI,MAAA,gBAAAJ,OAAA;AAKA,IAAAK,UAAA,gBAAAL,OAAA;AACA,IAAAM,OAAA,gBAAAP,uBAAA,cAAAC,OAAA;AACA,IAAAO,QAAA,gBAAAP,OAAA;AACA,IAAAQ,QAAA,gBAAAT,uBAAA,cAAAC,OAAA;AAA2C,IAAAS,OAAA,GAAAD,QAAA;AAC3C,IAAAE,SAAA,gBAAAX,uBAAA,cAAAC,OAAA;AAA2C,IAAAW,QAAA,GAAAD,SAAA;AAE3C,IAAAE,MAAA,gBAAAb,uBAAA,cAAAC,OAAA;AACA,IAAAa,OAAA,gBAAAd,uBAAA,cAAAC,OAAA;AACA,IAAAc,KAAA,gBAAAf,uBAAA,cAAAC,OAAA;AACA,IAAAe,MAAA,gBAAAhB,uBAAA,cAAAC,OAAA;AACA,IAAAgB,GAAA,gBAAAjB,uBAAA,cAAAC,OAAA;AACA,IAAAiB,QAAA,gBAAAlB,uBAAA,cAAAC,OAAA;AACA,IAAAkB,SAAA,gBAAAlB,OAAA;AAEA,IAAAmB,KAAA,gBAAApB,uBAAA,cAAAC,OAAA;AACA,IAAAoB,MAAA,gBAAApB,OAAA;AAA0D,SAAAD,wBAAAsB,CAAA,EAAAC,CAAA,6BAAAC,OAAA,MAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAxB,uBAAA,YAAAA,CAAAsB,CAAA,EAAAC,CAAA,SAAAA,CAAA,IAAAD,CAAA,IAAAA,CAAA,CAAAK,UAAA,SAAAL,CAAA,MAAAM,CAAA,EAAAC,CAAA,EAAAC,CAAA,KAAAC,SAAA,QAAAC,OAAA,EAAAV,CAAA,iBAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,SAAAQ,CAAA,MAAAF,CAAA,GAAAL,CAAA,GAAAG,CAAA,GAAAD,CAAA,QAAAG,CAAA,CAAAK,GAAA,CAAAX,CAAA,UAAAM,CAAA,CAAAM,GAAA,CAAAZ,CAAA,GAAAM,CAAA,CAAAO,GAAA,CAAAb,CAAA,EAAAQ,CAAA,gBAAAP,CAAA,IAAAD,CAAA,gBAAAC,CAAA,OAAAa,cAAA,CAAAC,IAAA,CAAAf,CAAA,EAAAC,CAAA,OAAAM,CAAA,IAAAD,CAAA,GAAAU,MAAA,CAAAC,cAAA,KAAAD,MAAA,CAAAE,wBAAA,CAAAlB,CAAA,EAAAC,CAAA,OAAAM,CAAA,CAAAK,GAAA,IAAAL,CAAA,CAAAM,GAAA,IAAAP,CAAA,CAAAE,CAAA,EAAAP,CAAA,EAAAM,CAAA,IAAAC,CAAA,CAAAP,CAAA,IAAAD,CAAA,CAAAC,CAAA,WAAAO,CAAA,KAAAR,CAAA,EAAAC,CAAA;AAE1D,MAAMkB,IAAI,gBAAG5B,MAAM,CAAC6B,GAAG,CAAC,aAAS;EAC/B,MAAM;IAAEC,IAAI;IAAEC;EAAK,CAAE,GAAG,OAAOC,4BAAa;EAE5C,MAAMC,KAAK,GAAG,OAAOC,yBAAc;EACnC,MAAM;IAAEC;EAAS,CAAE,GAAG,OAAOC,sBAAW;EAExC,MAAMC,eAAe,GAAGF,SAAS,CAC/B,iBAAiB,EACjBpC,QAAQ,CAACuC,MAAM,CAACR,IAAI,CAACO,eAAe,CAACE,MAAM,CAAC,EAC5CT,IAAI,CAACO,eAAe,CAACG,KAAK,CAC3B;EAED;EACA,MAAMC,YAAY,GAAG,OAAOrC,GAAG,CAACwB,IAAI,CAAC3B,OAAO,CAACyC,KAAK,EAAU,CAAC;EAC7D,MAAMC,UAAU,GAAG5C,QAAQ,CAAC6C,QAAQ,CAAC7C,QAAQ,CAAC8C,OAAO,CAAC,EAAE,CAAC,CAAC;EAC1D,MAAMC,WAAW,GAAIC,KAAa,IAChC/C,MAAM,CAACgD,QAAQ,CAAC,WAAW,CAAC,CAACC,IAAI,CAC/BjD,MAAM,CAACkD,QAAQ,CAAC9C,GAAG,CAAC+C,MAAM,CAACV,YAAY,EAAExC,OAAO,CAACmD,GAAG,CAACL,KAAK,CAAC,CAAC,CAAC,EAC7D/C,MAAM,CAACkD,QAAQ,CACbjB,KAAK,CAACoB,gBAAgB,CAAC,kBAAkB,EAAEV,UAAU,EAAE,KAAK,CAAC,CAC9D,EACD3C,MAAM,CAACsD,YAAY,CAAC,OAAO,EAAEP,KAAK,CAAC,CACpC;EACH,MAAMQ,UAAU,GAAIR,KAAa,IAC/B/C,MAAM,CAACwD,GAAG,CAACpD,GAAG,CAACiB,GAAG,CAACoB,YAAY,CAAC,EAAExC,OAAO,CAACmB,GAAG,CAAC2B,KAAK,CAAC,CAAC;EACvD,MAAMU,cAAc,GAAIV,KAAa,IACnC3C,GAAG,CAAC+C,MAAM,CAACV,YAAY,EAAExC,OAAO,CAACyD,MAAM,CAACX,KAAK,CAAC,CAAC;EAEjD,MAAMY,gBAAgB,GAAIZ,KAAa,IACrCQ,UAAU,CAACR,KAAK,CAAC,CAACE,IAAI,CACpBjD,MAAM,CAAC4D,GAAG,CAACC,OAAO,IAChBA,OAAO,GACH1B,SAAS,CAAC,kBAAkB,EAAEpC,QAAQ,CAAC8C,OAAO,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,GAC1D7C,MAAM,CAAC8D,IAAI,CAChB,EACD9D,MAAM,CAAC+D,MAAM,CACd;EAEH;EACA,MAAMC,gBAAgB,GAAGhE,MAAM,CAACiE,UAAU,CAAC,WACzCC,IAAY,EACZC,OAAsC;IAEtC,MAAMpB,KAAK,GAAG,IAAAqB,sBAAe,EAACF,IAAI,EAAEC,OAAO,CAACE,MAAM,CAAC;IACnD,MAAMC,WAAW,GAAG,OAAOrC,KAAK,CAACsC,iBAAiB,CAACxB,KAAK,CAAC;IACzD,OAAOY,gBAAgB,CAACZ,KAAK,CAAC;IAC9B,IAAI5C,MAAM,CAACqE,MAAM,CAACF,WAAW,CAAC,EAAE;IAChC,MAAMG,MAAM,GAAGH,WAAW,CAACI,KAAK;IAChC,OAAOvC,SAAS,CACd,YAAYsC,MAAM,CAACE,GAAG,EAAE,EACxB,IAAAC,gBAAM,EAACH,MAAM,CAACI,UAAU,CAAC,EACzBJ,MAAM,CAACjC,KAAK,CACb;EACH,CAAC,CAAC;EAEF;EACA,MAAMsC,aAAa,GAAG9E,MAAM,CAACiE,UAAU,CAAC,WACtCE,OAAsC,EACtCY,QAAyC;IAEzC,MAAMhC,KAAK,GAAG,IAAAqB,sBAAe,EAACD,OAAO,CAACa,GAAG,EAAEb,OAAO,CAACE,MAAM,CAAC;IAC1D,MAAMY,eAAe,GAAG,IAAAC,2BAAoB,EAACH,QAAQ,CAACI,OAAO,CAAC;IAC9D,IAAIhF,MAAM,CAACqE,MAAM,CAACS,eAAe,CAAC,EAAE;IACpC,MAAMG,SAAS,GAAGH,eAAe,CAACP,KAAK;IACvC,MAAMW,SAAS,GAAG,OAAOpD,KAAK,CAACoD,SAAS,CAACD,SAAS,CAACX,MAAM,CAAC;IAC1D,MAAMa,MAAM,GAAgD,EAAE;IAE9DA,MAAM,CAACC,IAAI,CAAC,OAAOvF,MAAM,CAACwF,IAAI,CAAC/B,cAAc,CAACV,KAAK,CAAC,CAAC,CAAC;IACtDuC,MAAM,CAACC,IAAI,CACT,OAAOvF,MAAM,CAACwF,IAAI,CAACvD,KAAK,CAACwD,cAAc,CAAC1C,KAAK,EAAEqC,SAAS,CAACX,MAAM,CAAC,CAAC,CAClE;IAED,IAAI,CAACY,SAAS,IAAID,SAAS,CAAC5C,KAAK,GAAG,CAAC,KAAK4C,SAAS,CAACM,SAAS,EAAE;MAC7DJ,MAAM,CAACC,IAAI,CACT,OAAOvF,MAAM,CAACwF,IAAI,CAACvD,KAAK,CAAC0D,aAAa,CAAC,cAAc5C,KAAK,EAAE,CAAC,CAAC,CAC/D;MACDuC,MAAM,CAACC,IAAI,CACT,OAAOvF,MAAM,CAACwF,IAAI,CAChBvD,KAAK,CAAC2D,SAAS,CAAC;QACdjB,GAAG,EAAES,SAAS,CAACX,MAAM;QACrBI,UAAU,EAAE9E,QAAQ,CAAC6C,QAAQ,CAACwC,SAAS,CAACS,UAAU,CAAC;QACnDrD,KAAK,EACH,CAAC6C,SAAS,IAAID,SAAS,CAACM,SAAS,GAAG,CAAC,GACjCN,SAAS,CAACM,SAAS,GACnBN,SAAS,CAAC5C;OACjB,CAAC,CACH,CACF;IACH;IAEA,KAAK,MAAMsD,KAAK,IAAIR,MAAM,EAAE,OAAOQ,KAAK,CAACC,KAAK;EAChD,CAAC,CAAC;EAEF,MAAMC,UAAU,GAA0B,CAAC,OAAO3G,UAAU,CAACA,UAAU,EAAE4D,IAAI,CAC3E5D,UAAU,CAAC4G,gBAAgB,CAAC9B,OAAO,IACjCH,gBAAgB,CAACG,OAAO,CAACa,GAAG,EAAEb,OAAO,CAAC,CAAClB,IAAI,CACzCjD,MAAM,CAACkG,OAAO,CAAC7D,eAAe,CAAC,EAC/BrC,MAAM,CAACmG,EAAE,CAAChC,OAAO,CAAC,CACnB,CACF,EACD9E,UAAU,CAAC+G,iBAAiB,CAC1B,IAAAC,cAAI,EACFrG,MAAM,CAAC4D,GAAG,CAACmB,QAAQ,IAAID,aAAa,CAACC,QAAQ,CAACZ,OAAO,EAAEY,QAAQ,CAAC,CAAC,EACjE/E,MAAM,CAACsG,OAAO,CAACvB,QAAQ,IAAG;IACxB,MAAMZ,OAAO,GAAGY,QAAQ,CAACZ,OAAO;IAEhC,QAAQY,QAAQ,CAACwB,MAAM;MACrB,KAAK,GAAG;QACN,OAAOvG,MAAM,CAACmG,EAAE,CACdnG,MAAM,CAACwG,GAAG,CACR,CACExG,MAAM,CAACsD,YAAY,CACjBtD,MAAM,CAACgD,QAAQ,CAAC,KAAK,CAAC,EACtB,KAAK,EACLmB,OAAO,CAACa,GAAG,CACZ,EACDlC,WAAW,CAAC,IAAAsB,sBAAe,EAACD,OAAO,CAACa,GAAG,EAAEb,OAAO,CAACE,MAAM,CAAC,CAAC,EACzDS,aAAa,CAACX,OAAO,EAAEY,QAAQ,CAAC,CACjC,EACD;UAAE0B,WAAW,EAAE,WAAW;UAAEC,OAAO,EAAE;QAAI,CAAE,CAC5C,EACD3B,QAAQ,CACT;MAEH,KAAK,GAAG;QACN,OAAO/E,MAAM,CAACsD,YAAY,CACxBtD,MAAM,CAACgD,QAAQ,CAAC,KAAK,CAAC,EACtB,KAAK,EACLmB,OAAO,CAACa,GAAG,CACZ,CAAC/B,IAAI,CACJjD,MAAM,CAACkD,QAAQ,CACbJ,WAAW,CAAC,IAAAsB,sBAAe,EAACD,OAAO,CAACa,GAAG,EAAEb,OAAO,CAACE,MAAM,CAAC,CAAC,CAC1D,EACDrE,MAAM,CAACkD,QAAQ,CAAC4B,aAAa,CAACX,OAAO,EAAEY,QAAQ,CAAC,CAAC,EACjD/E,MAAM,CAACkD,QAAQ,CACblD,MAAM,CAAC2G,KAAK,CACVxG,MAAM,CAACyG,SAAS,CAAC,IAAAf,iBAAU,EAACd,QAAQ,CAACI,OAAO,CAAC,EAAE,MAC7CpF,QAAQ,CAAC8G,OAAO,CAAC,CAAC,CAAC,CACpB,CACF,CACF,EACD7G,MAAM,CAACkD,QAAQ,CAAC8C,UAAU,CAACc,OAAO,CAAC3C,OAAO,CAAC,CAAC,CAC7C;IACL;IAEA,OAAOnE,MAAM,CAAC+G,OAAO,CAAChC,QAAQ,CAAC;EACjC,CAAC,CAAC,EACF/E,MAAM,CAACsD,YAAY,CAAC;IAClB0D,OAAO,EAAE,KAAK;IACdC,MAAM,EAAE;GACT,CAAC,CACH,CACF,CACF;EACD,MAAMC,qBAAqB,GAAG7H,UAAU,CAAC8H,eAAe,CAACnB,UAAU,EAAEoB,GAAG,IAAG;IACzE,MAAMtB,KAAK,GAAG3F,MAAM,CAACkH,UAAU,CAAC9G,KAAK,CAAC+G,eAAe,EAAE,CAAC;IACxD,IAAInD,OAAO,GAAGiD,GAAG,CAACnE,IAAI,CACpB3D,WAAW,CAACiI,UAAU,CAACzF,IAAI,CAAC0F,OAAO,CAAC,EACpClI,WAAW,CAACmI,UAAU,CAAC;MACrBC,aAAa,EAAE,OAAOrH,QAAQ,CAACqE,KAAK,CAAC3C,KAAK,CAAC,EAAE;MAC7C,YAAY,EAAE,iDAAiD4F,oBAAW;KAC3E,CAAC,CACH;IACD,MAAMC,QAAQ,GAAG/H,OAAO,CAACgI,SAAS,CAAC/B,KAAK,CAACgC,cAAc,EAAEC,eAAe,CAAC;IACzE,IAAI5H,MAAM,CAAC6H,MAAM,CAACJ,QAAQ,CAAC,EAAE;MAC3B,IAAIzD,OAAO,CAAC8D,IAAI,CAACC,IAAI,KAAK,YAAY,EAAE;QACtCN,QAAQ,CAAClD,KAAK,CAACpD,GAAG,CAChB,cAAc,EACd,IAAI6G,IAAI,CAAC,CAAChE,OAAO,CAAC8D,IAAI,CAACA,IAAI,CAAC,EAAE;UAAEG,IAAI,EAAE;QAAkB,CAAE,CAAC,EAC3D,EAAE,CACH;MACH;MACAjE,OAAO,GAAGkE,wBAAiB,CAACC,OAAO,CACjCnE,OAAO,EACPjF,QAAQ,CAAC0I,QAAQ,CAACA,QAAQ,CAAClD,KAAK,CAAC,CAClC;IACH;IACA,OAAOP,OAAO;EAChB,CAAC,CAAC;EAEF,OAAOoE,WAAW,CAACC,EAAE,CAAC;IACpB,GAAG9I,OAAO,CAACkC,IAAI,CAACsF,qBAAqB,CAAC;IACtCuB,YAAYA,CAACb,QAAQ;MACnB,OAAO5H,MAAM,CAAC0I,cAAc,CAACX,eAAe,EAAEH,QAAQ,CAAC;IACzD,CAAC;IACDe,SAASA,CAACC,KAAK;MACb,OACEC,MAA8B,IAE9B7I,MAAM,CAAC8I,OAAO,CAAC,MAAK;QAClB,MAAMlB,QAAQ,GAAG,IAAImB,QAAQ,EAAE;QAC/B,KAAK,IAAI/H,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAG4H,KAAK,CAACI,MAAM,EAAEhI,CAAC,EAAE,EAAE;UACrC4G,QAAQ,CAACqB,MAAM,CAAC,SAASjI,CAAC,GAAG,EAAE4H,KAAK,CAAC5H,CAAC,CAAC,CAAC;QAC1C;QACA,OAAOhB,MAAM,CAAC0I,cAAc,CAACG,MAAM,EAAEd,eAAe,EAAEH,QAAQ,CAAC;MACjE,CAAC,CAAC;IACN;GACD,CAAC;AACJ,CAAC,CAAC;AAEI,MAAOG,eAAgB,sBAAQlI,OAAO,CAACqJ,GAAG,CAAC,iBAAiB,CAAC,EAGhE;AAAGC,OAAA,CAAApB,eAAA,GAAAA,eAAA;AAeC,MAAMQ,WAAW,GAAAY,OAAA,CAAAZ,WAAA,gBAAG,IAAAa,mBAAU,EACnC,iBAAiB,CAClB;AACM,MAAMC,eAAe,GAAAF,OAAA,CAAAE,eAAA,gBAIxBnJ,KAAK,CAAC2I,MAAM,CAACN,WAAW,EAAE3G,IAAI,CAAC,CAACqB,IAAI,cAAC/C,KAAK,CAACoJ,OAAO,CAACC,0BAAe,CAAC,CAAC","ignoreList":[]}
|
package/mjs/DiscordREST.mjs
CHANGED
|
@@ -65,23 +65,7 @@ const make = /*#__PURE__*/Effect.gen(function* () {
|
|
|
65
65
|
}
|
|
66
66
|
for (const fiber of fibers) yield* fiber.await;
|
|
67
67
|
});
|
|
68
|
-
const httpClient = (yield* HttpClient.HttpClient).pipe(HttpClient.mapRequestEffect(
|
|
69
|
-
const fiber = Option.getOrThrow(Fiber.getCurrentFiber());
|
|
70
|
-
let request = req.pipe(HttpRequest.prependUrl(rest.baseUrl), HttpRequest.setHeaders({
|
|
71
|
-
Authorization: `Bot ${Redacted.value(token)}`,
|
|
72
|
-
"User-Agent": `DiscordBot (https://github.com/tim-smart/dfx, ${LIB_VERSION})`
|
|
73
|
-
}));
|
|
74
|
-
const formData = Context.getOption(fiber.currentContext, DiscordFormData);
|
|
75
|
-
if (Option.isSome(formData)) {
|
|
76
|
-
if (request.body._tag === "Uint8Array") {
|
|
77
|
-
formData.value.set("payload_json", new Blob([request.body.body], {
|
|
78
|
-
type: "application/json"
|
|
79
|
-
}), "");
|
|
80
|
-
}
|
|
81
|
-
request = HttpClientRequest.setBody(request, HttpBody.formData(formData.value));
|
|
82
|
-
}
|
|
83
|
-
return requestRateLimit(request.url, request).pipe(Effect.zipLeft(globalRateLimit), Effect.as(request));
|
|
84
|
-
}), HttpClient.transformResponse(flow(Effect.tap(response => updateBuckets(response.request, response)), Effect.flatMap(response => {
|
|
68
|
+
const httpClient = (yield* HttpClient.HttpClient).pipe(HttpClient.mapRequestEffect(request => requestRateLimit(request.url, request).pipe(Effect.zipLeft(globalRateLimit), Effect.as(request))), HttpClient.transformResponse(flow(Effect.tap(response => updateBuckets(response.request, response)), Effect.flatMap(response => {
|
|
85
69
|
const request = response.request;
|
|
86
70
|
switch (response.status) {
|
|
87
71
|
case 403:
|
|
@@ -97,8 +81,25 @@ const make = /*#__PURE__*/Effect.gen(function* () {
|
|
|
97
81
|
package: "dfx",
|
|
98
82
|
module: "DiscordREST"
|
|
99
83
|
}))));
|
|
84
|
+
const httpClientTransformed = HttpClient.mapRequestInput(httpClient, req => {
|
|
85
|
+
const fiber = Option.getOrThrow(Fiber.getCurrentFiber());
|
|
86
|
+
let request = req.pipe(HttpRequest.prependUrl(rest.baseUrl), HttpRequest.setHeaders({
|
|
87
|
+
Authorization: `Bot ${Redacted.value(token)}`,
|
|
88
|
+
"User-Agent": `DiscordBot (https://github.com/tim-smart/dfx, ${LIB_VERSION})`
|
|
89
|
+
}));
|
|
90
|
+
const formData = Context.getOption(fiber.currentContext, DiscordFormData);
|
|
91
|
+
if (Option.isSome(formData)) {
|
|
92
|
+
if (request.body._tag === "Uint8Array") {
|
|
93
|
+
formData.value.set("payload_json", new Blob([request.body.body], {
|
|
94
|
+
type: "application/json"
|
|
95
|
+
}), "");
|
|
96
|
+
}
|
|
97
|
+
request = HttpClientRequest.setBody(request, HttpBody.formData(formData.value));
|
|
98
|
+
}
|
|
99
|
+
return request;
|
|
100
|
+
});
|
|
100
101
|
return DiscordREST.of({
|
|
101
|
-
...Discord.make(
|
|
102
|
+
...Discord.make(httpClientTransformed),
|
|
102
103
|
withFormData(formData) {
|
|
103
104
|
return Effect.provideService(DiscordFormData, formData);
|
|
104
105
|
},
|
package/mjs/DiscordREST.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DiscordREST.mjs","names":["HttpBody","HttpClient","HttpRequest","DiscordConfig","rateLimitFromHeaders","retryAfter","routeFromConfig","RateLimitStore","RateLimiter","RateLimiterLive","Discord","LIB_VERSION","GenericTag","Duration","millis","Effect","HashSet","Layer","Option","Ref","Redacted","flow","Context","Fiber","HttpClientRequest","make","gen","rest","token","store","maybeWait","globalRateLimit","decode","window","limit","badRoutesRef","empty","tenMinutes","toMillis","minutes","addBadRoute","route","logDebug","pipe","zipRight","update","add","incrementCounter","annotateLogs","isBadRoute","map","get","has","removeBadRoute","remove","invalidRateLimit","tap","invalid","void","asVoid","requestRateLimit","fnUntraced","path","request","method","maybeBucket","getBucketForRoute","isNone","bucket","value","key","resetAfter","updateBuckets","response","url","rateLimitOption","headers","rateLimit","hasBucket","fibers","push","fork","putBucketRoute","remaining","removeCounter","putBucket","fiber","await","httpClient","mapRequestEffect","
|
|
1
|
+
{"version":3,"file":"DiscordREST.mjs","names":["HttpBody","HttpClient","HttpRequest","DiscordConfig","rateLimitFromHeaders","retryAfter","routeFromConfig","RateLimitStore","RateLimiter","RateLimiterLive","Discord","LIB_VERSION","GenericTag","Duration","millis","Effect","HashSet","Layer","Option","Ref","Redacted","flow","Context","Fiber","HttpClientRequest","make","gen","rest","token","store","maybeWait","globalRateLimit","decode","window","limit","badRoutesRef","empty","tenMinutes","toMillis","minutes","addBadRoute","route","logDebug","pipe","zipRight","update","add","incrementCounter","annotateLogs","isBadRoute","map","get","has","removeBadRoute","remove","invalidRateLimit","tap","invalid","void","asVoid","requestRateLimit","fnUntraced","path","request","method","maybeBucket","getBucketForRoute","isNone","bucket","value","key","resetAfter","updateBuckets","response","url","rateLimitOption","headers","rateLimit","hasBucket","fibers","push","fork","putBucketRoute","remaining","removeCounter","putBucket","fiber","await","httpClient","mapRequestEffect","zipLeft","as","transformResponse","flatMap","status","all","concurrency","discard","sleep","getOrElse","seconds","execute","succeed","package","module","httpClientTransformed","mapRequestInput","req","getOrThrow","getCurrentFiber","prependUrl","baseUrl","setHeaders","Authorization","formData","getOption","currentContext","DiscordFormData","isSome","body","_tag","set","Blob","type","setBody","DiscordREST","of","withFormData","provideService","withFiles","files","effect","suspend","FormData","i","length","append","Tag","DiscordRESTLive","provide"],"sources":["../src/DiscordREST.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
package/mjs/version.mjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export const LIB_VERSION = "0.118.
|
|
1
|
+
export const LIB_VERSION = "0.118.14";
|
|
2
2
|
//# sourceMappingURL=version.mjs.map
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "dfx",
|
|
3
|
-
"version": "0.118.
|
|
3
|
+
"version": "0.118.14",
|
|
4
4
|
"description": "Effect-TS discord library",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|
|
@@ -44,6 +44,6 @@
|
|
|
44
44
|
"optionalDependencies": {
|
|
45
45
|
"discord-verify": "^1.2.0"
|
|
46
46
|
},
|
|
47
|
-
"gitHead": "
|
|
47
|
+
"gitHead": "ca33fb15a1dd4de87fa7cdc70c94fa3d5b51f732",
|
|
48
48
|
"main": "./index.js"
|
|
49
49
|
}
|
package/src/DiscordREST.ts
CHANGED
|
@@ -119,34 +119,12 @@ const make = Effect.gen(function* () {
|
|
|
119
119
|
})
|
|
120
120
|
|
|
121
121
|
const httpClient: HttpClient.HttpClient = (yield* HttpClient.HttpClient).pipe(
|
|
122
|
-
HttpClient.mapRequestEffect(
|
|
123
|
-
|
|
124
|
-
let request = req.pipe(
|
|
125
|
-
HttpRequest.prependUrl(rest.baseUrl),
|
|
126
|
-
HttpRequest.setHeaders({
|
|
127
|
-
Authorization: `Bot ${Redacted.value(token)}`,
|
|
128
|
-
"User-Agent": `DiscordBot (https://github.com/tim-smart/dfx, ${LIB_VERSION})`,
|
|
129
|
-
}),
|
|
130
|
-
)
|
|
131
|
-
const formData = Context.getOption(fiber.currentContext, DiscordFormData)
|
|
132
|
-
if (Option.isSome(formData)) {
|
|
133
|
-
if (request.body._tag === "Uint8Array") {
|
|
134
|
-
formData.value.set(
|
|
135
|
-
"payload_json",
|
|
136
|
-
new Blob([request.body.body], { type: "application/json" }),
|
|
137
|
-
"",
|
|
138
|
-
)
|
|
139
|
-
}
|
|
140
|
-
request = HttpClientRequest.setBody(
|
|
141
|
-
request,
|
|
142
|
-
HttpBody.formData(formData.value),
|
|
143
|
-
)
|
|
144
|
-
}
|
|
145
|
-
return requestRateLimit(request.url, request).pipe(
|
|
122
|
+
HttpClient.mapRequestEffect(request =>
|
|
123
|
+
requestRateLimit(request.url, request).pipe(
|
|
146
124
|
Effect.zipLeft(globalRateLimit),
|
|
147
125
|
Effect.as(request),
|
|
148
|
-
)
|
|
149
|
-
|
|
126
|
+
),
|
|
127
|
+
),
|
|
150
128
|
HttpClient.transformResponse(
|
|
151
129
|
flow(
|
|
152
130
|
Effect.tap(response => updateBuckets(response.request, response)),
|
|
@@ -201,9 +179,34 @@ const make = Effect.gen(function* () {
|
|
|
201
179
|
),
|
|
202
180
|
),
|
|
203
181
|
)
|
|
182
|
+
const httpClientTransformed = HttpClient.mapRequestInput(httpClient, req => {
|
|
183
|
+
const fiber = Option.getOrThrow(Fiber.getCurrentFiber())
|
|
184
|
+
let request = req.pipe(
|
|
185
|
+
HttpRequest.prependUrl(rest.baseUrl),
|
|
186
|
+
HttpRequest.setHeaders({
|
|
187
|
+
Authorization: `Bot ${Redacted.value(token)}`,
|
|
188
|
+
"User-Agent": `DiscordBot (https://github.com/tim-smart/dfx, ${LIB_VERSION})`,
|
|
189
|
+
}),
|
|
190
|
+
)
|
|
191
|
+
const formData = Context.getOption(fiber.currentContext, DiscordFormData)
|
|
192
|
+
if (Option.isSome(formData)) {
|
|
193
|
+
if (request.body._tag === "Uint8Array") {
|
|
194
|
+
formData.value.set(
|
|
195
|
+
"payload_json",
|
|
196
|
+
new Blob([request.body.body], { type: "application/json" }),
|
|
197
|
+
"",
|
|
198
|
+
)
|
|
199
|
+
}
|
|
200
|
+
request = HttpClientRequest.setBody(
|
|
201
|
+
request,
|
|
202
|
+
HttpBody.formData(formData.value),
|
|
203
|
+
)
|
|
204
|
+
}
|
|
205
|
+
return request
|
|
206
|
+
})
|
|
204
207
|
|
|
205
208
|
return DiscordREST.of({
|
|
206
|
-
...Discord.make(
|
|
209
|
+
...Discord.make(httpClientTransformed),
|
|
207
210
|
withFormData(formData) {
|
|
208
211
|
return Effect.provideService(DiscordFormData, formData)
|
|
209
212
|
},
|
package/src/version.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export const LIB_VERSION = "0.118.
|
|
1
|
+
export const LIB_VERSION = "0.118.14";
|
package/version.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const LIB_VERSION = "0.118.
|
|
1
|
+
export declare const LIB_VERSION = "0.118.14";
|
|
2
2
|
//# sourceMappingURL=version.d.ts.map
|
package/version.js
CHANGED