effect-app 1.23.1 → 1.24.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/CHANGELOG.md +12 -0
- package/_cjs/http/Request.cjs +25 -0
- package/_cjs/http/Request.cjs.map +1 -0
- package/_cjs/http/internal/lib.cjs +33 -0
- package/_cjs/http/internal/lib.cjs.map +1 -0
- package/_cjs/http.cjs +11 -27
- package/_cjs/http.cjs.map +1 -1
- package/dist/client/clientFor.d.ts +2 -2
- package/dist/client/clientFor.d.ts.map +1 -1
- package/dist/http/Request.d.ts +9 -0
- package/dist/http/Request.d.ts.map +1 -0
- package/dist/http/Request.js +25 -0
- package/dist/http/internal/lib.d.ts +13 -0
- package/dist/http/internal/lib.d.ts.map +1 -0
- package/dist/http/internal/lib.js +13 -0
- package/dist/http.d.ts +1 -12
- package/dist/http.d.ts.map +1 -1
- package/dist/http.js +2 -13
- package/package.json +19 -20
- package/src/client/clientFor.ts +2 -2
- package/src/http/Request.ts +41 -0
- package/src/http/internal/lib.ts +12 -0
- package/src/http.ts +1 -12
- package/tsconfig.src.json +0 -8
- package/vitest.config.ts.timestamp-1670862388823.mjs +23 -0
- package/_cjs/Request.cjs +0 -53
- package/_cjs/Request.cjs.map +0 -1
- package/dist/Request.d.ts +0 -36
- package/dist/Request.d.ts.map +0 -1
- package/dist/Request.js +0 -47
- package/src/Request.ts +0 -94
- package/vitest.config.ts.timestamp-1709838418683-4e8d39caec6be.mjs +0 -33
- package/vitest.config.ts.timestamp-1711656440837-b61cd88636759.mjs +0 -37
- package/vitest.config.ts.timestamp-1711724061890-f88ec51585e5c.mjs +0 -37
- package/vitest.config.ts.timestamp-1711743471020-0a3f182bca84f.mjs +0 -0
- package/vitest.config.ts.timestamp-1711743489536-f03d3db08b368.mjs +0 -37
- package/vitest.config.ts.timestamp-1711743593445-f537ce2bb2c6a.mjs +0 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,17 @@
|
|
|
1
1
|
# @effect-app/prelude
|
|
2
2
|
|
|
3
|
+
## 1.24.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- b9b64b8: housekeeping: update packages
|
|
8
|
+
|
|
9
|
+
### Patch Changes
|
|
10
|
+
|
|
11
|
+
- Updated dependencies [b9b64b8]
|
|
12
|
+
- @effect-app/schema@1.16.0
|
|
13
|
+
- @effect-app/core@1.13.0
|
|
14
|
+
|
|
3
15
|
## 1.23.1
|
|
4
16
|
|
|
5
17
|
### Patch Changes
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.responseWithJsonBody = exports.demandJson = void 0;
|
|
7
|
+
var _lib = require("../lib.cjs");
|
|
8
|
+
var _lib2 = require("./internal/lib.cjs");
|
|
9
|
+
// TODO: consider rebuilding the text/json helpers to use a cached effect
|
|
10
|
+
// https://discord.com/channels/795981131316985866/1098177242598756412/1168565257569046712
|
|
11
|
+
const responseWithJsonBody = response => _lib.Effect.map(response.json, body => ({
|
|
12
|
+
body,
|
|
13
|
+
headers: response.headers,
|
|
14
|
+
status: response.status,
|
|
15
|
+
remoteAddress: response.remoteAddress
|
|
16
|
+
}));
|
|
17
|
+
exports.responseWithJsonBody = responseWithJsonBody;
|
|
18
|
+
const demandJson = client => _lib2.HttpClient.mapRequest(client, _ => _lib2.HttpClientRequest.acceptJson(_)).pipe(_lib2.HttpClient.transform((r, request) => _lib.Effect.tap(r, response => _lib.Option.getOrUndefined(_lib2.HttpHeaders.get(response.headers, "Content-Type"))?.startsWith("application/json") ? _lib.Effect.void : _lib.Effect.fail(new _lib2.HttpClientError.ResponseError({
|
|
19
|
+
request,
|
|
20
|
+
response,
|
|
21
|
+
reason: "Decode",
|
|
22
|
+
description: "not json response: " + _lib.Option.getOrUndefined(_lib2.HttpHeaders.get(response.headers, "Content-Type"))
|
|
23
|
+
})))));
|
|
24
|
+
exports.demandJson = demandJson;
|
|
25
|
+
//# sourceMappingURL=Request.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Request.cjs","names":["_lib","require","_lib2","responseWithJsonBody","response","Effect","map","json","body","headers","status","remoteAddress","exports","demandJson","client","HttpClient","mapRequest","_","HttpClientRequest","acceptJson","pipe","transform","r","request","tap","Option","getOrUndefined","HttpHeaders","get","startsWith","void","fail","HttpClientError","ResponseError","reason","description"],"sources":["../../src/http/Request.ts"],"sourcesContent":[null],"mappings":";;;;;;AACA,IAAAA,IAAA,GAAAC,OAAA;AACA,IAAAC,KAAA,GAAAD,OAAA;AAMA;AACA;AAEO,MAAME,oBAAoB,GAC/BC,QAA4B,IAE5BC,WAAM,CAACC,GAAG,CAACF,QAAQ,CAACG,IAAI,EAAGC,IAAI,KAAiC;EAC9DA,IAAI;EACJC,OAAO,EAAEL,QAAQ,CAACK,OAAO;EACzBC,MAAM,EAAEN,QAAQ,CAACM,MAAM;EACvBC,aAAa,EAAEP,QAAQ,CAACO;CACzB,CAAC,CAAC;AAAAC,OAAA,CAAAT,oBAAA,GAAAA,oBAAA;AAEE,MAAMU,UAAU,GAAUC,MAAmC,IAClEC,gBAAU,CACPC,UAAU,CAACF,MAAM,EAAGG,CAAC,IAAKC,uBAAiB,CAACC,UAAU,CAACF,CAAC,CAAC,CAAC,CAC1DG,IAAI,CAACL,gBAAU,CAACM,SAAS,CAAC,CAACC,CAAC,EAAEC,OAAO,KACpClB,WAAM,CAACmB,GAAG,CAACF,CAAC,EAAGlB,QAAQ,IACrBqB,WAAM,CACDC,cAAc,CAACC,iBAAW,CACxBC,GAAG,CAACxB,QAAQ,CAACK,OAAO,EAAE,cAAc,CAAC,CAAC,EACvCoB,UAAU,CAAC,kBAAkB,CAAC,GAChCxB,WAAM,CAACyB,IAAI,GACXzB,WAAM,CAAC0B,IAAI,CACX,IAAIC,qBAAe,CAACC,aAAa,CAAC;EAChCV,OAAO;EACPnB,QAAQ;EACR8B,MAAM,EAAE,QAAQ;EAChBC,WAAW,EAAE,qBAAqB,GAC9BV,WAAM,CAACC,cAAc,CAACC,iBAAW,CAACC,GAAG,CAACxB,QAAQ,CAACK,OAAO,EAAE,cAAc,CAAC;CAC5E,CAAC,CACH,CAAC,CACP,CAAC;AAAAG,OAAA,CAAAC,UAAA,GAAAA,UAAA","ignoreList":[]}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.HttpServerResponse = exports.HttpServerRequest = exports.HttpServerError = exports.HttpServer = exports.HttpRouter = exports.HttpMiddleware = exports.HttpHeaders = exports.HttpClientResponse = exports.HttpClientRequest = exports.HttpClientError = exports.HttpClient = exports.HttpBody = void 0;
|
|
7
|
+
var _HttpHeaders = _interopRequireWildcard(require("@effect/platform/Headers"));
|
|
8
|
+
exports.HttpHeaders = _HttpHeaders;
|
|
9
|
+
var _HttpBody = _interopRequireWildcard(require("@effect/platform/HttpBody"));
|
|
10
|
+
exports.HttpBody = _HttpBody;
|
|
11
|
+
var _HttpClient = _interopRequireWildcard(require("@effect/platform/HttpClient"));
|
|
12
|
+
exports.HttpClient = _HttpClient;
|
|
13
|
+
var _HttpClientError = _interopRequireWildcard(require("@effect/platform/HttpClientError"));
|
|
14
|
+
exports.HttpClientError = _HttpClientError;
|
|
15
|
+
var _HttpClientRequest = _interopRequireWildcard(require("@effect/platform/HttpClientRequest"));
|
|
16
|
+
exports.HttpClientRequest = _HttpClientRequest;
|
|
17
|
+
var _HttpClientResponse = _interopRequireWildcard(require("@effect/platform/HttpClientResponse"));
|
|
18
|
+
exports.HttpClientResponse = _HttpClientResponse;
|
|
19
|
+
var _HttpMiddleware = _interopRequireWildcard(require("@effect/platform/HttpMiddleware"));
|
|
20
|
+
exports.HttpMiddleware = _HttpMiddleware;
|
|
21
|
+
var _HttpRouter = _interopRequireWildcard(require("@effect/platform/HttpRouter"));
|
|
22
|
+
exports.HttpRouter = _HttpRouter;
|
|
23
|
+
var _HttpServer = _interopRequireWildcard(require("@effect/platform/HttpServer"));
|
|
24
|
+
exports.HttpServer = _HttpServer;
|
|
25
|
+
var _HttpServerError = _interopRequireWildcard(require("@effect/platform/HttpServerError"));
|
|
26
|
+
exports.HttpServerError = _HttpServerError;
|
|
27
|
+
var _HttpServerRequest = _interopRequireWildcard(require("@effect/platform/HttpServerRequest"));
|
|
28
|
+
exports.HttpServerRequest = _HttpServerRequest;
|
|
29
|
+
var _HttpServerResponse = _interopRequireWildcard(require("@effect/platform/HttpServerResponse"));
|
|
30
|
+
exports.HttpServerResponse = _HttpServerResponse;
|
|
31
|
+
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
|
+
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
|
+
//# sourceMappingURL=lib.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lib.cjs","names":[],"sources":["../../../src/http/internal/lib.ts"],"sourcesContent":[null],"mappings":"","ignoreList":[]}
|
package/_cjs/http.cjs
CHANGED
|
@@ -3,31 +3,15 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
exports
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
var _HttpClientResponse = _interopRequireWildcard(require("@effect/platform/HttpClientResponse"));
|
|
18
|
-
exports.HttpClientResponse = _HttpClientResponse;
|
|
19
|
-
var _HttpMiddleware = _interopRequireWildcard(require("@effect/platform/HttpMiddleware"));
|
|
20
|
-
exports.HttpMiddleware = _HttpMiddleware;
|
|
21
|
-
var _HttpRouter = _interopRequireWildcard(require("@effect/platform/HttpRouter"));
|
|
22
|
-
exports.HttpRouter = _HttpRouter;
|
|
23
|
-
var _HttpServer = _interopRequireWildcard(require("@effect/platform/HttpServer"));
|
|
24
|
-
exports.HttpServer = _HttpServer;
|
|
25
|
-
var _HttpServerError = _interopRequireWildcard(require("@effect/platform/HttpServerError"));
|
|
26
|
-
exports.HttpServerError = _HttpServerError;
|
|
27
|
-
var _HttpServerRequest = _interopRequireWildcard(require("@effect/platform/HttpServerRequest"));
|
|
28
|
-
exports.HttpServerRequest = _HttpServerRequest;
|
|
29
|
-
var _HttpServerResponse = _interopRequireWildcard(require("@effect/platform/HttpServerResponse"));
|
|
30
|
-
exports.HttpServerResponse = _HttpServerResponse;
|
|
31
|
-
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
|
-
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; }
|
|
6
|
+
var _lib = require("./http/internal/lib.cjs");
|
|
7
|
+
Object.keys(_lib).forEach(function (key) {
|
|
8
|
+
if (key === "default" || key === "__esModule") return;
|
|
9
|
+
if (key in exports && exports[key] === _lib[key]) return;
|
|
10
|
+
Object.defineProperty(exports, key, {
|
|
11
|
+
enumerable: true,
|
|
12
|
+
get: function () {
|
|
13
|
+
return _lib[key];
|
|
14
|
+
}
|
|
15
|
+
});
|
|
16
|
+
});
|
|
33
17
|
//# sourceMappingURL=http.cjs.map
|
package/_cjs/http.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"http.cjs","names":[],"sources":["../src/http.ts"],"sourcesContent":[null],"mappings":"","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"http.cjs","names":["_lib","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get"],"sources":["../src/http.ts"],"sourcesContent":[null],"mappings":";;;;;AAAA,IAAAA,IAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,IAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,IAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAT,IAAA,CAAAK,GAAA;IAAA;EAAA;AAAA","ignoreList":[]}
|
|
@@ -9,8 +9,8 @@ import { Path } from "path-parser";
|
|
|
9
9
|
export declare function makePathWithQuery(path: Path, pars: Record<string, string | number | boolean | readonly string[] | readonly number[] | readonly boolean[] | null>): string;
|
|
10
10
|
export declare function makePathWithBody(path: Path, pars: Record<string, string | number | boolean | readonly string[] | readonly number[] | readonly boolean[] | null>): string;
|
|
11
11
|
type Requests = Record<string, any>;
|
|
12
|
-
export type Client<M extends Requests> = RequestHandlers<ApiConfig | HttpClient.HttpClient
|
|
13
|
-
M> & RequestHandlersE<ApiConfig | HttpClient.HttpClient
|
|
12
|
+
export type Client<M extends Requests> = RequestHandlers<ApiConfig | HttpClient.HttpClient, never, // SupportedErrors | FetchError | ResError,
|
|
13
|
+
M> & RequestHandlersE<ApiConfig | HttpClient.HttpClient, never, // SupportedErrors | FetchError | ResError,
|
|
14
14
|
M>;
|
|
15
15
|
export declare function makeClientFor(layers: Layer.Layer<never, never, never>): <M extends Requests>(models: M) => Client<Omit<M, "meta">>;
|
|
16
16
|
export type ExtractResponse<T> = T extends Schema<any, any, any> ? Schema.Type<T> : T extends unknown ? void : never;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"clientFor.d.ts","sourceRoot":"","sources":["../../src/client/clientFor.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,MAAM,EAAiB,KAAK,EAA6B,MAAM,kBAAkB,CAAA;AAI1F,OAAO,KAAK,KAAK,YAAY,MAAM,6BAA6B,CAAA;AAEhE,OAAO,EAAE,CAAC,EAAE,MAAM,YAAY,CAAA;AAC9B,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAC7C,OAAO,EAAE,UAAU,EAAqB,MAAM,iBAAiB,CAAA;AAC/D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAE/C,OAAO,KAAK,KAAK,OAAO,MAAM,gBAAgB,CAAA;AAC9C,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAA;AAGlC,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE,IAAI,EACV,IAAI,EAAE,MAAM,CACV,MAAM,EACJ,MAAM,GACN,MAAM,GACN,OAAO,GACP,SAAS,MAAM,EAAE,GACjB,SAAS,MAAM,EAAE,GACjB,SAAS,OAAO,EAAE,GAClB,IAAI,CACP,UAUF;AAED,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,IAAI,EACV,IAAI,EAAE,MAAM,CACV,MAAM,EACJ,MAAM,GACN,MAAM,GACN,OAAO,GACP,SAAS,MAAM,EAAE,GACjB,SAAS,MAAM,EAAE,GACjB,SAAS,OAAO,EAAE,GAClB,IAAI,CACP,UAGF;AAED,KAAK,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;AAanC,MAAM,MAAM,MAAM,CAAC,CAAC,SAAS,QAAQ,IACjC,eAAe,CACf,SAAS,GAAG,UAAU,CAAC,UAAU,
|
|
1
|
+
{"version":3,"file":"clientFor.d.ts","sourceRoot":"","sources":["../../src/client/clientFor.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { HttpClientResponse } from "@effect/platform/HttpClientResponse";
|
|
2
|
+
import { Effect } from "../lib.js";
|
|
3
|
+
import { HttpClient, HttpClientError } from "./internal/lib.js";
|
|
4
|
+
export interface ResponseWithBody<A> extends Pick<HttpClientResponse, "headers" | "status" | "remoteAddress"> {
|
|
5
|
+
readonly body: A;
|
|
6
|
+
}
|
|
7
|
+
export declare const responseWithJsonBody: (response: HttpClientResponse) => Effect.Effect<ResponseWithBody<unknown>, HttpClientError.ResponseError, never>;
|
|
8
|
+
export declare const demandJson: <E, R>(client: HttpClient.HttpClient<E, R>) => HttpClient.HttpClient<HttpClientError.ResponseError | E, R>;
|
|
9
|
+
//# sourceMappingURL=Request.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Request.d.ts","sourceRoot":"","sources":["../../src/http/Request.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAA;AAC7E,OAAO,EAAE,MAAM,EAAU,MAAM,WAAW,CAAA;AAC1C,OAAO,EAAE,UAAU,EAAE,eAAe,EAAkC,MAAM,mBAAmB,CAAA;AAE/F,MAAM,WAAW,gBAAgB,CAAC,CAAC,CAAE,SAAQ,IAAI,CAAC,kBAAkB,EAAE,SAAS,GAAG,QAAQ,GAAG,eAAe,CAAC;IAC3G,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAA;CACjB;AAKD,eAAO,MAAM,oBAAoB,aACrB,kBAAkB,mFAOzB,CAAA;AAEL,eAAO,MAAM,UAAU,GAAI,CAAC,EAAE,CAAC,UAAU,UAAU,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,gEAmB9D,CAAA"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { Effect, Option } from "../lib.js";
|
|
2
|
+
import { HttpClient, HttpClientError, HttpClientRequest, HttpHeaders } from "./internal/lib.js";
|
|
3
|
+
// TODO: consider rebuilding the text/json helpers to use a cached effect
|
|
4
|
+
// https://discord.com/channels/795981131316985866/1098177242598756412/1168565257569046712
|
|
5
|
+
export const responseWithJsonBody = (response) => Effect.map(response.json, (body) => ({
|
|
6
|
+
body,
|
|
7
|
+
headers: response.headers,
|
|
8
|
+
status: response.status,
|
|
9
|
+
remoteAddress: response.remoteAddress
|
|
10
|
+
}));
|
|
11
|
+
export const demandJson = (client) => HttpClient
|
|
12
|
+
.mapRequest(client, (_) => HttpClientRequest.acceptJson(_))
|
|
13
|
+
.pipe(HttpClient.transform((r, request) => Effect.tap(r, (response) => Option
|
|
14
|
+
.getOrUndefined(HttpHeaders
|
|
15
|
+
.get(response.headers, "Content-Type"))
|
|
16
|
+
?.startsWith("application/json")
|
|
17
|
+
? Effect.void
|
|
18
|
+
: Effect.fail(new HttpClientError.ResponseError({
|
|
19
|
+
request,
|
|
20
|
+
response,
|
|
21
|
+
reason: "Decode",
|
|
22
|
+
description: "not json response: "
|
|
23
|
+
+ Option.getOrUndefined(HttpHeaders.get(response.headers, "Content-Type"))
|
|
24
|
+
})))));
|
|
25
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUmVxdWVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9odHRwL1JlcXVlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxXQUFXLENBQUE7QUFDMUMsT0FBTyxFQUFFLFVBQVUsRUFBRSxlQUFlLEVBQUUsaUJBQWlCLEVBQUUsV0FBVyxFQUFFLE1BQU0sbUJBQW1CLENBQUE7QUFNL0YseUVBQXlFO0FBQ3pFLDBGQUEwRjtBQUUxRixNQUFNLENBQUMsTUFBTSxvQkFBb0IsR0FBRyxDQUNsQyxRQUE0QixFQUM1QixFQUFFLENBQ0YsTUFBTSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLENBQUMsSUFBSSxFQUE2QixFQUFFLENBQUMsQ0FBQztJQUM5RCxJQUFJO0lBQ0osT0FBTyxFQUFFLFFBQVEsQ0FBQyxPQUFPO0lBQ3pCLE1BQU0sRUFBRSxRQUFRLENBQUMsTUFBTTtJQUN2QixhQUFhLEVBQUUsUUFBUSxDQUFDLGFBQWE7Q0FDdEMsQ0FBQyxDQUFDLENBQUE7QUFFTCxNQUFNLENBQUMsTUFBTSxVQUFVLEdBQUcsQ0FBTyxNQUFtQyxFQUFFLEVBQUUsQ0FDdEUsVUFBVTtLQUNQLFVBQVUsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLGlCQUFpQixDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQztLQUMxRCxJQUFJLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxPQUFPLEVBQUUsRUFBRSxDQUN4QyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQ3pCLE1BQU07S0FDRCxjQUFjLENBQUMsV0FBVztLQUN4QixHQUFHLENBQUMsUUFBUSxDQUFDLE9BQU8sRUFBRSxjQUFjLENBQUMsQ0FBQztJQUN6QyxFQUFFLFVBQVUsQ0FBQyxrQkFBa0IsQ0FBQztJQUNsQyxDQUFDLENBQUMsTUFBTSxDQUFDLElBQUk7SUFDYixDQUFDLENBQUMsTUFBTSxDQUFDLElBQUksQ0FDWCxJQUFJLGVBQWUsQ0FBQyxhQUFhLENBQUM7UUFDaEMsT0FBTztRQUNQLFFBQVE7UUFDUixNQUFNLEVBQUUsUUFBUTtRQUNoQixXQUFXLEVBQUUscUJBQXFCO2NBQzlCLE1BQU0sQ0FBQyxjQUFjLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsT0FBTyxFQUFFLGNBQWMsQ0FBQyxDQUFDO0tBQzdFLENBQUMsQ0FDSCxDQUFDLENBQ1AsQ0FBQyxDQUFBIn0=
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export * as HttpHeaders from "@effect/platform/Headers";
|
|
2
|
+
export * as HttpBody from "@effect/platform/HttpBody";
|
|
3
|
+
export * as HttpClient from "@effect/platform/HttpClient";
|
|
4
|
+
export * as HttpClientError from "@effect/platform/HttpClientError";
|
|
5
|
+
export * as HttpClientRequest from "@effect/platform/HttpClientRequest";
|
|
6
|
+
export * as HttpClientResponse from "@effect/platform/HttpClientResponse";
|
|
7
|
+
export * as HttpMiddleware from "@effect/platform/HttpMiddleware";
|
|
8
|
+
export * as HttpRouter from "@effect/platform/HttpRouter";
|
|
9
|
+
export * as HttpServer from "@effect/platform/HttpServer";
|
|
10
|
+
export * as HttpServerError from "@effect/platform/HttpServerError";
|
|
11
|
+
export * as HttpServerRequest from "@effect/platform/HttpServerRequest";
|
|
12
|
+
export * as HttpServerResponse from "@effect/platform/HttpServerResponse";
|
|
13
|
+
//# sourceMappingURL=lib.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lib.d.ts","sourceRoot":"","sources":["../../../src/http/internal/lib.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,WAAW,MAAM,0BAA0B,CAAA;AACvD,OAAO,KAAK,QAAQ,MAAM,2BAA2B,CAAA;AACrD,OAAO,KAAK,UAAU,MAAM,6BAA6B,CAAA;AACzD,OAAO,KAAK,eAAe,MAAM,kCAAkC,CAAA;AACnE,OAAO,KAAK,iBAAiB,MAAM,oCAAoC,CAAA;AACvE,OAAO,KAAK,kBAAkB,MAAM,qCAAqC,CAAA;AACzE,OAAO,KAAK,cAAc,MAAM,iCAAiC,CAAA;AACjE,OAAO,KAAK,UAAU,MAAM,6BAA6B,CAAA;AACzD,OAAO,KAAK,UAAU,MAAM,6BAA6B,CAAA;AACzD,OAAO,KAAK,eAAe,MAAM,kCAAkC,CAAA;AACnE,OAAO,KAAK,iBAAiB,MAAM,oCAAoC,CAAA;AACvE,OAAO,KAAK,kBAAkB,MAAM,qCAAqC,CAAA"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export * as HttpHeaders from "@effect/platform/Headers";
|
|
2
|
+
export * as HttpBody from "@effect/platform/HttpBody";
|
|
3
|
+
export * as HttpClient from "@effect/platform/HttpClient";
|
|
4
|
+
export * as HttpClientError from "@effect/platform/HttpClientError";
|
|
5
|
+
export * as HttpClientRequest from "@effect/platform/HttpClientRequest";
|
|
6
|
+
export * as HttpClientResponse from "@effect/platform/HttpClientResponse";
|
|
7
|
+
export * as HttpMiddleware from "@effect/platform/HttpMiddleware";
|
|
8
|
+
export * as HttpRouter from "@effect/platform/HttpRouter";
|
|
9
|
+
export * as HttpServer from "@effect/platform/HttpServer";
|
|
10
|
+
export * as HttpServerError from "@effect/platform/HttpServerError";
|
|
11
|
+
export * as HttpServerRequest from "@effect/platform/HttpServerRequest";
|
|
12
|
+
export * as HttpServerResponse from "@effect/platform/HttpServerResponse";
|
|
13
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGliLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2h0dHAvaW50ZXJuYWwvbGliLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxXQUFXLE1BQU0sMEJBQTBCLENBQUE7QUFDdkQsT0FBTyxLQUFLLFFBQVEsTUFBTSwyQkFBMkIsQ0FBQTtBQUNyRCxPQUFPLEtBQUssVUFBVSxNQUFNLDZCQUE2QixDQUFBO0FBQ3pELE9BQU8sS0FBSyxlQUFlLE1BQU0sa0NBQWtDLENBQUE7QUFDbkUsT0FBTyxLQUFLLGlCQUFpQixNQUFNLG9DQUFvQyxDQUFBO0FBQ3ZFLE9BQU8sS0FBSyxrQkFBa0IsTUFBTSxxQ0FBcUMsQ0FBQTtBQUN6RSxPQUFPLEtBQUssY0FBYyxNQUFNLGlDQUFpQyxDQUFBO0FBQ2pFLE9BQU8sS0FBSyxVQUFVLE1BQU0sNkJBQTZCLENBQUE7QUFDekQsT0FBTyxLQUFLLFVBQVUsTUFBTSw2QkFBNkIsQ0FBQTtBQUN6RCxPQUFPLEtBQUssZUFBZSxNQUFNLGtDQUFrQyxDQUFBO0FBQ25FLE9BQU8sS0FBSyxpQkFBaUIsTUFBTSxvQ0FBb0MsQ0FBQTtBQUN2RSxPQUFPLEtBQUssa0JBQWtCLE1BQU0scUNBQXFDLENBQUEifQ==
|
package/dist/http.d.ts
CHANGED
|
@@ -1,13 +1,2 @@
|
|
|
1
|
-
export *
|
|
2
|
-
export * as HttpBody from "@effect/platform/HttpBody";
|
|
3
|
-
export * as HttpClient from "@effect/platform/HttpClient";
|
|
4
|
-
export * as HttpClientError from "@effect/platform/HttpClientError";
|
|
5
|
-
export * as HttpClientRequest from "@effect/platform/HttpClientRequest";
|
|
6
|
-
export * as HttpClientResponse from "@effect/platform/HttpClientResponse";
|
|
7
|
-
export * as HttpMiddleware from "@effect/platform/HttpMiddleware";
|
|
8
|
-
export * as HttpRouter from "@effect/platform/HttpRouter";
|
|
9
|
-
export * as HttpServer from "@effect/platform/HttpServer";
|
|
10
|
-
export * as HttpServerError from "@effect/platform/HttpServerError";
|
|
11
|
-
export * as HttpServerRequest from "@effect/platform/HttpServerRequest";
|
|
12
|
-
export * as HttpServerResponse from "@effect/platform/HttpServerResponse";
|
|
1
|
+
export * from "./http/internal/lib.js";
|
|
13
2
|
//# sourceMappingURL=http.d.ts.map
|
package/dist/http.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../src/http.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../src/http.ts"],"names":[],"mappings":"AAAA,cAAc,wBAAwB,CAAA"}
|
package/dist/http.js
CHANGED
|
@@ -1,13 +1,2 @@
|
|
|
1
|
-
export *
|
|
2
|
-
|
|
3
|
-
export * as HttpClient from "@effect/platform/HttpClient";
|
|
4
|
-
export * as HttpClientError from "@effect/platform/HttpClientError";
|
|
5
|
-
export * as HttpClientRequest from "@effect/platform/HttpClientRequest";
|
|
6
|
-
export * as HttpClientResponse from "@effect/platform/HttpClientResponse";
|
|
7
|
-
export * as HttpMiddleware from "@effect/platform/HttpMiddleware";
|
|
8
|
-
export * as HttpRouter from "@effect/platform/HttpRouter";
|
|
9
|
-
export * as HttpServer from "@effect/platform/HttpServer";
|
|
10
|
-
export * as HttpServerError from "@effect/platform/HttpServerError";
|
|
11
|
-
export * as HttpServerRequest from "@effect/platform/HttpServerRequest";
|
|
12
|
-
export * as HttpServerResponse from "@effect/platform/HttpServerResponse";
|
|
13
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHR0cC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9odHRwLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxXQUFXLE1BQU0sMEJBQTBCLENBQUE7QUFDdkQsT0FBTyxLQUFLLFFBQVEsTUFBTSwyQkFBMkIsQ0FBQTtBQUNyRCxPQUFPLEtBQUssVUFBVSxNQUFNLDZCQUE2QixDQUFBO0FBQ3pELE9BQU8sS0FBSyxlQUFlLE1BQU0sa0NBQWtDLENBQUE7QUFDbkUsT0FBTyxLQUFLLGlCQUFpQixNQUFNLG9DQUFvQyxDQUFBO0FBQ3ZFLE9BQU8sS0FBSyxrQkFBa0IsTUFBTSxxQ0FBcUMsQ0FBQTtBQUN6RSxPQUFPLEtBQUssY0FBYyxNQUFNLGlDQUFpQyxDQUFBO0FBQ2pFLE9BQU8sS0FBSyxVQUFVLE1BQU0sNkJBQTZCLENBQUE7QUFDekQsT0FBTyxLQUFLLFVBQVUsTUFBTSw2QkFBNkIsQ0FBQTtBQUN6RCxPQUFPLEtBQUssZUFBZSxNQUFNLGtDQUFrQyxDQUFBO0FBQ25FLE9BQU8sS0FBSyxpQkFBaUIsTUFBTSxvQ0FBb0MsQ0FBQTtBQUN2RSxPQUFPLEtBQUssa0JBQWtCLE1BQU0scUNBQXFDLENBQUEifQ==
|
|
1
|
+
export * from "./http/internal/lib.js";
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHR0cC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9odHRwLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsd0JBQXdCLENBQUEifQ==
|
package/package.json
CHANGED
|
@@ -1,21 +1,21 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "effect-app",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.24.0",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"dependencies": {
|
|
7
|
-
"@effect/rpc": "^0.
|
|
8
|
-
"@effect/rpc-http": "^0.
|
|
7
|
+
"@effect/rpc": "^0.43.0",
|
|
8
|
+
"@effect/rpc-http": "^0.41.0",
|
|
9
9
|
"@tsconfig/strictest": "^2.0.5",
|
|
10
10
|
"date-fns": "^4.1.0",
|
|
11
11
|
"nanoid": "^5.0.7",
|
|
12
12
|
"path-parser": "^6.1.0",
|
|
13
|
-
"query-string": "^9.1.
|
|
13
|
+
"query-string": "^9.1.1",
|
|
14
14
|
"ts-pattern": "^5.4.0",
|
|
15
15
|
"uuid": "^10.0.0",
|
|
16
16
|
"validator": "^13.12.0",
|
|
17
|
-
"@effect-app/
|
|
18
|
-
"@effect-app/
|
|
17
|
+
"@effect-app/schema": "1.16.0",
|
|
18
|
+
"@effect-app/core": "1.13.0"
|
|
19
19
|
},
|
|
20
20
|
"devDependencies": {
|
|
21
21
|
"@babel/cli": "^7.25.7",
|
|
@@ -24,14 +24,13 @@
|
|
|
24
24
|
"@types/uuid": "^10.0.0",
|
|
25
25
|
"@types/validator": "^13.12.2",
|
|
26
26
|
"fast-check": "~3.22.0",
|
|
27
|
-
"
|
|
28
|
-
"typescript": "^5.6.2",
|
|
27
|
+
"typescript": "^5.6.3",
|
|
29
28
|
"vitest": "^2.1.2"
|
|
30
29
|
},
|
|
31
30
|
"peerDependencies": {
|
|
32
|
-
"@effect/platform": "^0.
|
|
31
|
+
"@effect/platform": "^0.68.1",
|
|
33
32
|
"effect": "^3.9.1",
|
|
34
|
-
"@effect/schema": "^0.75.
|
|
33
|
+
"@effect/schema": "^0.75.2"
|
|
35
34
|
},
|
|
36
35
|
"typesVersions": {
|
|
37
36
|
"*": {
|
|
@@ -91,16 +90,6 @@
|
|
|
91
90
|
"default": "./_cjs/Pure.cjs"
|
|
92
91
|
}
|
|
93
92
|
},
|
|
94
|
-
"./Request": {
|
|
95
|
-
"import": {
|
|
96
|
-
"types": "./dist/Request.d.ts",
|
|
97
|
-
"default": "./dist/Request.js"
|
|
98
|
-
},
|
|
99
|
-
"require": {
|
|
100
|
-
"types": "./dist/Request.d.ts",
|
|
101
|
-
"default": "./_cjs/Request.cjs"
|
|
102
|
-
}
|
|
103
|
-
},
|
|
104
93
|
"./Widen.type": {
|
|
105
94
|
"import": {
|
|
106
95
|
"types": "./dist/Widen.type.d.ts",
|
|
@@ -201,6 +190,16 @@
|
|
|
201
190
|
"default": "./_cjs/http.cjs"
|
|
202
191
|
}
|
|
203
192
|
},
|
|
193
|
+
"./http/Request": {
|
|
194
|
+
"import": {
|
|
195
|
+
"types": "./dist/http/Request.d.ts",
|
|
196
|
+
"default": "./dist/http/Request.js"
|
|
197
|
+
},
|
|
198
|
+
"require": {
|
|
199
|
+
"types": "./dist/http/Request.d.ts",
|
|
200
|
+
"default": "./_cjs/http/Request.cjs"
|
|
201
|
+
}
|
|
202
|
+
},
|
|
204
203
|
"./ids": {
|
|
205
204
|
"import": {
|
|
206
205
|
"types": "./dist/ids.d.ts",
|
package/src/client/clientFor.ts
CHANGED
|
@@ -70,12 +70,12 @@ const apiClient = Effect.gen(function*() {
|
|
|
70
70
|
|
|
71
71
|
export type Client<M extends Requests> =
|
|
72
72
|
& RequestHandlers<
|
|
73
|
-
ApiConfig | HttpClient.HttpClient
|
|
73
|
+
ApiConfig | HttpClient.HttpClient,
|
|
74
74
|
never, // SupportedErrors | FetchError | ResError,
|
|
75
75
|
M
|
|
76
76
|
>
|
|
77
77
|
& RequestHandlersE<
|
|
78
|
-
ApiConfig | HttpClient.HttpClient
|
|
78
|
+
ApiConfig | HttpClient.HttpClient,
|
|
79
79
|
never, // SupportedErrors | FetchError | ResError,
|
|
80
80
|
M
|
|
81
81
|
>
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import type { HttpClientResponse } from "@effect/platform/HttpClientResponse"
|
|
2
|
+
import { Effect, Option } from "../lib.js"
|
|
3
|
+
import { HttpClient, HttpClientError, HttpClientRequest, HttpHeaders } from "./internal/lib.js"
|
|
4
|
+
|
|
5
|
+
export interface ResponseWithBody<A> extends Pick<HttpClientResponse, "headers" | "status" | "remoteAddress"> {
|
|
6
|
+
readonly body: A
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
// TODO: consider rebuilding the text/json helpers to use a cached effect
|
|
10
|
+
// https://discord.com/channels/795981131316985866/1098177242598756412/1168565257569046712
|
|
11
|
+
|
|
12
|
+
export const responseWithJsonBody = (
|
|
13
|
+
response: HttpClientResponse
|
|
14
|
+
) =>
|
|
15
|
+
Effect.map(response.json, (body): ResponseWithBody<unknown> => ({
|
|
16
|
+
body,
|
|
17
|
+
headers: response.headers,
|
|
18
|
+
status: response.status,
|
|
19
|
+
remoteAddress: response.remoteAddress
|
|
20
|
+
}))
|
|
21
|
+
|
|
22
|
+
export const demandJson = <E, R>(client: HttpClient.HttpClient<E, R>) =>
|
|
23
|
+
HttpClient
|
|
24
|
+
.mapRequest(client, (_) => HttpClientRequest.acceptJson(_))
|
|
25
|
+
.pipe(HttpClient.transform((r, request) =>
|
|
26
|
+
Effect.tap(r, (response) =>
|
|
27
|
+
Option
|
|
28
|
+
.getOrUndefined(HttpHeaders
|
|
29
|
+
.get(response.headers, "Content-Type"))
|
|
30
|
+
?.startsWith("application/json")
|
|
31
|
+
? Effect.void
|
|
32
|
+
: Effect.fail(
|
|
33
|
+
new HttpClientError.ResponseError({
|
|
34
|
+
request,
|
|
35
|
+
response,
|
|
36
|
+
reason: "Decode",
|
|
37
|
+
description: "not json response: "
|
|
38
|
+
+ Option.getOrUndefined(HttpHeaders.get(response.headers, "Content-Type"))
|
|
39
|
+
})
|
|
40
|
+
))
|
|
41
|
+
))
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export * as HttpHeaders from "@effect/platform/Headers"
|
|
2
|
+
export * as HttpBody from "@effect/platform/HttpBody"
|
|
3
|
+
export * as HttpClient from "@effect/platform/HttpClient"
|
|
4
|
+
export * as HttpClientError from "@effect/platform/HttpClientError"
|
|
5
|
+
export * as HttpClientRequest from "@effect/platform/HttpClientRequest"
|
|
6
|
+
export * as HttpClientResponse from "@effect/platform/HttpClientResponse"
|
|
7
|
+
export * as HttpMiddleware from "@effect/platform/HttpMiddleware"
|
|
8
|
+
export * as HttpRouter from "@effect/platform/HttpRouter"
|
|
9
|
+
export * as HttpServer from "@effect/platform/HttpServer"
|
|
10
|
+
export * as HttpServerError from "@effect/platform/HttpServerError"
|
|
11
|
+
export * as HttpServerRequest from "@effect/platform/HttpServerRequest"
|
|
12
|
+
export * as HttpServerResponse from "@effect/platform/HttpServerResponse"
|
package/src/http.ts
CHANGED
|
@@ -1,12 +1 @@
|
|
|
1
|
-
export *
|
|
2
|
-
export * as HttpBody from "@effect/platform/HttpBody"
|
|
3
|
-
export * as HttpClient from "@effect/platform/HttpClient"
|
|
4
|
-
export * as HttpClientError from "@effect/platform/HttpClientError"
|
|
5
|
-
export * as HttpClientRequest from "@effect/platform/HttpClientRequest"
|
|
6
|
-
export * as HttpClientResponse from "@effect/platform/HttpClientResponse"
|
|
7
|
-
export * as HttpMiddleware from "@effect/platform/HttpMiddleware"
|
|
8
|
-
export * as HttpRouter from "@effect/platform/HttpRouter"
|
|
9
|
-
export * as HttpServer from "@effect/platform/HttpServer"
|
|
10
|
-
export * as HttpServerError from "@effect/platform/HttpServerError"
|
|
11
|
-
export * as HttpServerRequest from "@effect/platform/HttpServerRequest"
|
|
12
|
-
export * as HttpServerResponse from "@effect/platform/HttpServerResponse"
|
|
1
|
+
export * from "./http/internal/lib.js"
|
package/tsconfig.src.json
CHANGED
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
// vitest.config.ts
|
|
2
|
+
import { defineConfig } from "file:///Users/patrickroza/Projects/Personal/effect-ts-app/libs/node_modules/.pnpm/vite@4.0.0_@types+node@18.11.12/node_modules/vite/dist/node/index.js";
|
|
3
|
+
|
|
4
|
+
// ../../vite.config.base.ts
|
|
5
|
+
import { tsPlugin } from "file:///Users/patrickroza/Projects/Personal/effect-ts-app/libs/packages/compiler/dist/vitePlugin.js";
|
|
6
|
+
function makeConfig() {
|
|
7
|
+
return {
|
|
8
|
+
plugins: [tsPlugin({})],
|
|
9
|
+
test: {
|
|
10
|
+
include: ["./_src/**/*.test.{js,mjs,cjs,ts,mts,cts,jsx,tsx}"],
|
|
11
|
+
exclude: ["./_test/**/*"],
|
|
12
|
+
reporters: "verbose",
|
|
13
|
+
globals: true
|
|
14
|
+
}
|
|
15
|
+
};
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
// vitest.config.ts
|
|
19
|
+
var vitest_config_default = defineConfig(makeConfig());
|
|
20
|
+
export {
|
|
21
|
+
vitest_config_default as default
|
|
22
|
+
};
|
|
23
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsidml0ZXN0LmNvbmZpZy50cyIsICIuLi8uLi92aXRlLmNvbmZpZy5iYXNlLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyJjb25zdCBfX3ZpdGVfaW5qZWN0ZWRfb3JpZ2luYWxfZGlybmFtZSA9IFwiL1VzZXJzL3BhdHJpY2tyb3phL1Byb2plY3RzL1BlcnNvbmFsL2VmZmVjdC10cy1hcHAvbGlicy9wYWNrYWdlcy9ib2lsZXJwbGF0ZS1wcmVsdWRlXCI7Y29uc3QgX192aXRlX2luamVjdGVkX29yaWdpbmFsX2ZpbGVuYW1lID0gXCIvVXNlcnMvcGF0cmlja3JvemEvUHJvamVjdHMvUGVyc29uYWwvZWZmZWN0LXRzLWFwcC9saWJzL3BhY2thZ2VzL2JvaWxlcnBsYXRlLXByZWx1ZGUvdml0ZXN0LmNvbmZpZy50c1wiO2NvbnN0IF9fdml0ZV9pbmplY3RlZF9vcmlnaW5hbF9pbXBvcnRfbWV0YV91cmwgPSBcImZpbGU6Ly8vVXNlcnMvcGF0cmlja3JvemEvUHJvamVjdHMvUGVyc29uYWwvZWZmZWN0LXRzLWFwcC9saWJzL3BhY2thZ2VzL2JvaWxlcnBsYXRlLXByZWx1ZGUvdml0ZXN0LmNvbmZpZy50c1wiOy8vLyA8cmVmZXJlbmNlIHR5cGVzPVwidml0ZXN0XCIgLz5cbmltcG9ydCB7IGRlZmluZUNvbmZpZyB9IGZyb20gXCJ2aXRlXCJcbmltcG9ydCBtYWtlQ29uZmlnIGZyb20gXCIuLi8uLi92aXRlLmNvbmZpZy5iYXNlXCJcblxuZXhwb3J0IGRlZmF1bHQgZGVmaW5lQ29uZmlnKG1ha2VDb25maWcoKSlcbiIsICJjb25zdCBfX3ZpdGVfaW5qZWN0ZWRfb3JpZ2luYWxfZGlybmFtZSA9IFwiL1VzZXJzL3BhdHJpY2tyb3phL1Byb2plY3RzL1BlcnNvbmFsL2VmZmVjdC10cy1hcHAvbGlic1wiO2NvbnN0IF9fdml0ZV9pbmplY3RlZF9vcmlnaW5hbF9maWxlbmFtZSA9IFwiL1VzZXJzL3BhdHJpY2tyb3phL1Byb2plY3RzL1BlcnNvbmFsL2VmZmVjdC10cy1hcHAvbGlicy92aXRlLmNvbmZpZy5iYXNlLnRzXCI7Y29uc3QgX192aXRlX2luamVjdGVkX29yaWdpbmFsX2ltcG9ydF9tZXRhX3VybCA9IFwiZmlsZTovLy9Vc2Vycy9wYXRyaWNrcm96YS9Qcm9qZWN0cy9QZXJzb25hbC9lZmZlY3QtdHMtYXBwL2xpYnMvdml0ZS5jb25maWcuYmFzZS50c1wiOy8vLyA8cmVmZXJlbmNlIHR5cGVzPVwidml0ZXN0XCIgLz5cbmltcG9ydCB7IHRzUGx1Z2luIH0gZnJvbSBcIkBlZmZlY3QtdHMtYXBwL2NvbXBpbGVyL3ZpdGVQbHVnaW5cIlxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gbWFrZUNvbmZpZygpIHtcbiAgcmV0dXJuIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXZhci1yZXF1aXJlc1xuICAgIHBsdWdpbnM6IFt0c1BsdWdpbih7fSldLFxuICAgIHRlc3Q6IHtcbiAgICAgIGluY2x1ZGU6IFtcIi4vX3NyYy8qKi8qLnRlc3Que2pzLG1qcyxjanMsdHMsbXRzLGN0cyxqc3gsdHN4fVwiXSxcbiAgICAgIGV4Y2x1ZGU6IFtcIi4vX3Rlc3QvKiovKlwiXSxcbiAgICAgIHJlcG9ydGVyczogXCJ2ZXJib3NlXCIsXG4gICAgICBnbG9iYWxzOiB0cnVlXG4gICAgfSxcbiAgICAvLyByZXNvbHZlOiB7XG4gICAgLy8gICBhbGlhczoge1xuICAgIC8vICAgICBcIkBlZmZlY3QvaW8vdGVzdFwiOiBwYXRoLnJlc29sdmUoX19kaXJuYW1lLCBcIi90ZXN0XCIpLFxuICAgIC8vICAgICBcIkBlZmZlY3QvaW9cIjogcGF0aC5yZXNvbHZlKF9fZGlybmFtZSwgXCIvc3JjXCIpXG4gICAgLy8gICB9XG4gICAgLy8gfVxuICB9XG59XG4iXSwKICAibWFwcGluZ3MiOiAiO0FBQ0EsU0FBUyxvQkFBb0I7OztBQ0E3QixTQUFTLGdCQUFnQjtBQUNWLFNBQVIsYUFBOEI7QUFDbkMsU0FBTztBQUFBLElBRUwsU0FBUyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUM7QUFBQSxJQUN0QixNQUFNO0FBQUEsTUFDSixTQUFTLENBQUMsa0RBQWtEO0FBQUEsTUFDNUQsU0FBUyxDQUFDLGNBQWM7QUFBQSxNQUN4QixXQUFXO0FBQUEsTUFDWCxTQUFTO0FBQUEsSUFDWDtBQUFBLEVBT0Y7QUFDRjs7O0FEZkEsSUFBTyx3QkFBUSxhQUFhLFdBQVcsQ0FBQzsiLAogICJuYW1lcyI6IFtdCn0K
|
package/_cjs/Request.cjs
DELETED
|
@@ -1,53 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.schemaJsonBodyUnsafe = exports.schemaJsonBody = exports.responseWithSchemaBody = exports.responseWithJsonBody = exports.demandJson = void 0;
|
|
7
|
-
var _http = require("./http.cjs");
|
|
8
|
-
var _lib = require("./lib.cjs");
|
|
9
|
-
// TODO: consider rebuilding the text/json helpers to use a cached effect
|
|
10
|
-
// https://discord.com/channels/795981131316985866/1098177242598756412/1168565257569046712
|
|
11
|
-
/**
|
|
12
|
-
* @tsplus getter effect/platform/Http/ClientResponse responseWithJsonBody
|
|
13
|
-
*/
|
|
14
|
-
const responseWithJsonBody = response => _lib.Effect.map(response.json, body => ({
|
|
15
|
-
body,
|
|
16
|
-
headers: response.headers,
|
|
17
|
-
status: response.status,
|
|
18
|
-
remoteAddress: response.remoteAddress
|
|
19
|
-
}));
|
|
20
|
-
/**
|
|
21
|
-
* @tsplus fluent effect/platform/Http/Client schemaJsonBody
|
|
22
|
-
*/
|
|
23
|
-
exports.responseWithJsonBody = responseWithJsonBody;
|
|
24
|
-
const schemaJsonBody = (client, schema) => {
|
|
25
|
-
return _http.HttpClient.mapEffect(client, _ => _lib.Effect.flatMap(_.json, _lib.S.decodeUnknown(schema)));
|
|
26
|
-
};
|
|
27
|
-
/**
|
|
28
|
-
* @tsplus fluent effect/platform/Http/Client schemaJsonBodyUnsafe
|
|
29
|
-
*/
|
|
30
|
-
exports.schemaJsonBody = schemaJsonBody;
|
|
31
|
-
const schemaJsonBodyUnsafe = (client, schema) => {
|
|
32
|
-
return _http.HttpClient.mapEffect(client, _ => _lib.Effect.map(_.json, _lib.S.decodeUnknownSync(schema)));
|
|
33
|
-
};
|
|
34
|
-
/**
|
|
35
|
-
* @tsplus fluent effect/platform/Http/Client responseWithSchemaBody
|
|
36
|
-
*/
|
|
37
|
-
exports.schemaJsonBodyUnsafe = schemaJsonBodyUnsafe;
|
|
38
|
-
const responseWithSchemaBody = (client, schema) => {
|
|
39
|
-
return _http.HttpClient.mapEffect(client, _ => _lib.Effect.flatMap(responseWithJsonBody(_), _ => _lib.Effect.map(_lib.S.decodeUnknown(schema)(_.body), body => ({
|
|
40
|
-
..._,
|
|
41
|
-
body
|
|
42
|
-
}))));
|
|
43
|
-
};
|
|
44
|
-
/** @tsplus getter effect/platform/Http/Client demandJson */
|
|
45
|
-
exports.responseWithSchemaBody = responseWithSchemaBody;
|
|
46
|
-
const demandJson = client => _http.HttpClient.mapRequest(client, _ => _http.HttpClientRequest.acceptJson(_)).pipe(_http.HttpClient.transform((r, request) => _lib.Effect.tap(r, response => _lib.Option.getOrUndefined(_http.HttpHeaders.get(response.headers, "Content-Type"))?.startsWith("application/json") ? _lib.Effect.void : _lib.Effect.fail(new _http.HttpClientError.ResponseError({
|
|
47
|
-
request,
|
|
48
|
-
response,
|
|
49
|
-
reason: "Decode",
|
|
50
|
-
description: "not json response: " + _lib.Option.getOrUndefined(_http.HttpHeaders.get(response.headers, "Content-Type"))
|
|
51
|
-
})))));
|
|
52
|
-
exports.demandJson = demandJson;
|
|
53
|
-
//# sourceMappingURL=Request.cjs.map
|
package/_cjs/Request.cjs.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Request.cjs","names":["_http","require","_lib","responseWithJsonBody","response","Effect","map","json","body","headers","status","remoteAddress","exports","schemaJsonBody","client","schema","HttpClient","mapEffect","_","flatMap","S","decodeUnknown","schemaJsonBodyUnsafe","decodeUnknownSync","responseWithSchemaBody","demandJson","mapRequest","HttpClientRequest","acceptJson","pipe","transform","r","request","tap","Option","getOrUndefined","HttpHeaders","get","startsWith","void","fail","HttpClientError","ResponseError","reason","description"],"sources":["../src/Request.ts"],"sourcesContent":[null],"mappings":";;;;;;AAGA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,IAAA,GAAAD,OAAA;AAMA;AACA;AAEA;;;AAGO,MAAME,oBAAoB,GAC/BC,QAA4B,IAE5BC,WAAM,CAACC,GAAG,CAACF,QAAQ,CAACG,IAAI,EAAGC,IAAI,KAAiC;EAC9DA,IAAI;EACJC,OAAO,EAAEL,QAAQ,CAACK,OAAO;EACzBC,MAAM,EAAEN,QAAQ,CAACM,MAAM;EACvBC,aAAa,EAAEP,QAAQ,CAACO;CACzB,CAAC,CAAC;AAEL;;;AAAAC,OAAA,CAAAT,oBAAA,GAAAA,oBAAA;AAGO,MAAMU,cAAc,GAAGA,CAC5BC,MAAuD,EACvDC,MAA4B,KAC1B;EACF,OAAOC,gBAAU,CAACC,SAAS,CAACH,MAAM,EAAGI,CAAC,IAAKb,WAAM,CAACc,OAAO,CAACD,CAAC,CAACX,IAAI,EAAEa,MAAC,CAACC,aAAa,CAACN,MAAM,CAAC,CAAC,CAAC;AAC7F,CAAC;AAED;;;AAAAH,OAAA,CAAAC,cAAA,GAAAA,cAAA;AAGO,MAAMS,oBAAoB,GAAGA,CAClCR,MAAuD,EACvDC,MAAwB,KACtB;EACF,OAAOC,gBAAU,CAACC,SAAS,CAACH,MAAM,EAAGI,CAAC,IAAKb,WAAM,CAACC,GAAG,CAACY,CAAC,CAACX,IAAI,EAAEa,MAAC,CAACG,iBAAiB,CAACR,MAAM,CAAC,CAAC,CAAC;AAC7F,CAAC;AAED;;;AAAAH,OAAA,CAAAU,oBAAA,GAAAA,oBAAA;AAGO,MAAME,sBAAsB,GAAGA,CAWpCV,MAAuD,EACvDC,MAA4B,KAC1B;EACF,OAAOC,gBAAU,CAACC,SAAS,CACzBH,MAAM,EACLI,CAAC,IACAb,WAAM,CAACc,OAAO,CACZhB,oBAAoB,CAACe,CAAC,CAAC,EACtBA,CAAC,IAAKb,WAAM,CAACC,GAAG,CAACc,MAAC,CAACC,aAAa,CAACN,MAAM,CAAC,CAACG,CAAC,CAACV,IAAI,CAAC,EAAGA,IAAI,KAAM;IAAE,GAAGU,CAAC;IAAEV;EAAI,CAAE,CAAC,CAAC,CAC/E,CACJ;AACH,CAAC;AAED;AAAAI,OAAA,CAAAY,sBAAA,GAAAA,sBAAA;AACO,MAAMC,UAAU,GAAUX,MAAuD,IACtFE,gBAAU,CACPU,UAAU,CAACZ,MAAM,EAAGI,CAAC,IAAKS,uBAAiB,CAACC,UAAU,CAACV,CAAC,CAAC,CAAC,CAC1DW,IAAI,CAACb,gBAAU,CAACc,SAAS,CAAC,CAACC,CAAC,EAAEC,OAAO,KACpC3B,WAAM,CAAC4B,GAAG,CAACF,CAAC,EAAG3B,QAAQ,IACrB8B,WAAM,CACDC,cAAc,CAACC,iBAAW,CACxBC,GAAG,CAACjC,QAAQ,CAACK,OAAO,EAAE,cAAc,CAAC,CAAC,EACvC6B,UAAU,CAAC,kBAAkB,CAAC,GAChCjC,WAAM,CAACkC,IAAI,GACXlC,WAAM,CAACmC,IAAI,CACX,IAAIC,qBAAe,CAACC,aAAa,CAAC;EAChCV,OAAO;EACP5B,QAAQ;EACRuC,MAAM,EAAE,QAAQ;EAChBC,WAAW,EAAE,qBAAqB,GAC9BV,WAAM,CAACC,cAAc,CAACC,iBAAW,CAACC,GAAG,CAACjC,QAAQ,CAACK,OAAO,EAAE,cAAc,CAAC;CAC5E,CAAC,CACH,CAAC,CACP,CAAC;AAAAG,OAAA,CAAAa,UAAA,GAAAA,UAAA","ignoreList":[]}
|
package/dist/Request.d.ts
DELETED
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
import type { Schema } from "@effect-app/schema";
|
|
2
|
-
import type { Headers } from "@effect/platform/Headers";
|
|
3
|
-
import type { HttpClientResponse } from "@effect/platform/HttpClientResponse";
|
|
4
|
-
import { HttpClient, HttpClientError } from "./http.js";
|
|
5
|
-
import { Effect, Option, S } from "./lib.js";
|
|
6
|
-
export interface ResponseWithBody<A> extends Pick<HttpClientResponse, "headers" | "status" | "remoteAddress"> {
|
|
7
|
-
readonly body: A;
|
|
8
|
-
}
|
|
9
|
-
/**
|
|
10
|
-
* @tsplus getter effect/platform/Http/ClientResponse responseWithJsonBody
|
|
11
|
-
*/
|
|
12
|
-
export declare const responseWithJsonBody: (response: HttpClientResponse) => Effect.Effect<ResponseWithBody<unknown>, HttpClientError.ResponseError, never>;
|
|
13
|
-
/**
|
|
14
|
-
* @tsplus fluent effect/platform/Http/Client schemaJsonBody
|
|
15
|
-
*/
|
|
16
|
-
export declare const schemaJsonBody: <RS, To, From, E, R>(client: HttpClient.HttpClient<HttpClientResponse, E, R>, schema: Schema<To, From, RS>) => HttpClient.HttpClient<To, HttpClientError.ResponseError | E | S.ParseResult.ParseError, RS | R>;
|
|
17
|
-
/**
|
|
18
|
-
* @tsplus fluent effect/platform/Http/Client schemaJsonBodyUnsafe
|
|
19
|
-
*/
|
|
20
|
-
export declare const schemaJsonBodyUnsafe: <To, From, E, R>(client: HttpClient.HttpClient<HttpClientResponse, E, R>, schema: Schema<To, From>) => HttpClient.HttpClient<To, HttpClientError.ResponseError | E, R>;
|
|
21
|
-
/**
|
|
22
|
-
* @tsplus fluent effect/platform/Http/Client responseWithSchemaBody
|
|
23
|
-
*/
|
|
24
|
-
export declare const responseWithSchemaBody: <To, From extends {
|
|
25
|
-
readonly status?: number;
|
|
26
|
-
readonly headers?: Headers;
|
|
27
|
-
readonly body?: unknown;
|
|
28
|
-
}, RS, E, R>(client: HttpClient.HttpClient<HttpClientResponse, E, R>, schema: Schema<To, From, RS>) => HttpClient.HttpClient<{
|
|
29
|
-
body: To;
|
|
30
|
-
headers: Headers;
|
|
31
|
-
status: number;
|
|
32
|
-
remoteAddress: Option.Option<string>;
|
|
33
|
-
}, HttpClientError.ResponseError | E | S.ParseResult.ParseError, RS | R>;
|
|
34
|
-
/** @tsplus getter effect/platform/Http/Client demandJson */
|
|
35
|
-
export declare const demandJson: <E, R>(client: HttpClient.HttpClient<HttpClientResponse, E, R>) => HttpClient.HttpClient<HttpClientResponse, HttpClientError.ResponseError | E, R>;
|
|
36
|
-
//# sourceMappingURL=Request.d.ts.map
|
package/dist/Request.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Request.d.ts","sourceRoot":"","sources":["../src/Request.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAA;AAChD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAA;AACvD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAA;AAC7E,OAAO,EAAE,UAAU,EAAE,eAAe,EAAkC,MAAM,WAAW,CAAA;AACvF,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,UAAU,CAAA;AAE5C,MAAM,WAAW,gBAAgB,CAAC,CAAC,CAAE,SAAQ,IAAI,CAAC,kBAAkB,EAAE,SAAS,GAAG,QAAQ,GAAG,eAAe,CAAC;IAC3G,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAA;CACjB;AAKD;;GAEG;AACH,eAAO,MAAM,oBAAoB,aACrB,kBAAkB,mFAOzB,CAAA;AAEL;;GAEG;AACH,eAAO,MAAM,cAAc,GAAI,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,UACvC,UAAU,CAAC,UAAU,CAAC,kBAAkB,EAAE,CAAC,EAAE,CAAC,CAAC,UAC/C,MAAM,CAAC,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,oGAG7B,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,oBAAoB,GAAI,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,UACzC,UAAU,CAAC,UAAU,CAAC,kBAAkB,EAAE,CAAC,EAAE,CAAC,CAAC,UAC/C,MAAM,CAAC,EAAE,EAAE,IAAI,CAAC,oEAGzB,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,sBAAsB,GACjC,EAAE,EACF,IAAI,SAAS;IACX,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAA;IAC1B,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,CAAA;CACxB,EACD,EAAE,EACF,CAAC,EACD,CAAC,UAEO,UAAU,CAAC,UAAU,CAAC,kBAAkB,EAAE,CAAC,EAAE,CAAC,CAAC,UAC/C,MAAM,CAAC,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC;;;;;wEAU7B,CAAA;AAED,4DAA4D;AAC5D,eAAO,MAAM,UAAU,GAAI,CAAC,EAAE,CAAC,UAAU,UAAU,CAAC,UAAU,CAAC,kBAAkB,EAAE,CAAC,EAAE,CAAC,CAAC,oFAmBlF,CAAA"}
|
package/dist/Request.js
DELETED
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
import { HttpClient, HttpClientError, HttpClientRequest, HttpHeaders } from "./http.js";
|
|
2
|
-
import { Effect, Option, S } from "./lib.js";
|
|
3
|
-
// TODO: consider rebuilding the text/json helpers to use a cached effect
|
|
4
|
-
// https://discord.com/channels/795981131316985866/1098177242598756412/1168565257569046712
|
|
5
|
-
/**
|
|
6
|
-
* @tsplus getter effect/platform/Http/ClientResponse responseWithJsonBody
|
|
7
|
-
*/
|
|
8
|
-
export const responseWithJsonBody = (response) => Effect.map(response.json, (body) => ({
|
|
9
|
-
body,
|
|
10
|
-
headers: response.headers,
|
|
11
|
-
status: response.status,
|
|
12
|
-
remoteAddress: response.remoteAddress
|
|
13
|
-
}));
|
|
14
|
-
/**
|
|
15
|
-
* @tsplus fluent effect/platform/Http/Client schemaJsonBody
|
|
16
|
-
*/
|
|
17
|
-
export const schemaJsonBody = (client, schema) => {
|
|
18
|
-
return HttpClient.mapEffect(client, (_) => Effect.flatMap(_.json, S.decodeUnknown(schema)));
|
|
19
|
-
};
|
|
20
|
-
/**
|
|
21
|
-
* @tsplus fluent effect/platform/Http/Client schemaJsonBodyUnsafe
|
|
22
|
-
*/
|
|
23
|
-
export const schemaJsonBodyUnsafe = (client, schema) => {
|
|
24
|
-
return HttpClient.mapEffect(client, (_) => Effect.map(_.json, S.decodeUnknownSync(schema)));
|
|
25
|
-
};
|
|
26
|
-
/**
|
|
27
|
-
* @tsplus fluent effect/platform/Http/Client responseWithSchemaBody
|
|
28
|
-
*/
|
|
29
|
-
export const responseWithSchemaBody = (client, schema) => {
|
|
30
|
-
return HttpClient.mapEffect(client, (_) => Effect.flatMap(responseWithJsonBody(_), (_) => Effect.map(S.decodeUnknown(schema)(_.body), (body) => ({ ..._, body }))));
|
|
31
|
-
};
|
|
32
|
-
/** @tsplus getter effect/platform/Http/Client demandJson */
|
|
33
|
-
export const demandJson = (client) => HttpClient
|
|
34
|
-
.mapRequest(client, (_) => HttpClientRequest.acceptJson(_))
|
|
35
|
-
.pipe(HttpClient.transform((r, request) => Effect.tap(r, (response) => Option
|
|
36
|
-
.getOrUndefined(HttpHeaders
|
|
37
|
-
.get(response.headers, "Content-Type"))
|
|
38
|
-
?.startsWith("application/json")
|
|
39
|
-
? Effect.void
|
|
40
|
-
: Effect.fail(new HttpClientError.ResponseError({
|
|
41
|
-
request,
|
|
42
|
-
response,
|
|
43
|
-
reason: "Decode",
|
|
44
|
-
description: "not json response: "
|
|
45
|
-
+ Option.getOrUndefined(HttpHeaders.get(response.headers, "Content-Type"))
|
|
46
|
-
})))));
|
|
47
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUmVxdWVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9SZXF1ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE9BQU8sRUFBRSxVQUFVLEVBQUUsZUFBZSxFQUFFLGlCQUFpQixFQUFFLFdBQVcsRUFBRSxNQUFNLFdBQVcsQ0FBQTtBQUN2RixPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxDQUFDLEVBQUUsTUFBTSxVQUFVLENBQUE7QUFNNUMseUVBQXlFO0FBQ3pFLDBGQUEwRjtBQUUxRjs7R0FFRztBQUNILE1BQU0sQ0FBQyxNQUFNLG9CQUFvQixHQUFHLENBQ2xDLFFBQTRCLEVBQzVCLEVBQUUsQ0FDRixNQUFNLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxJQUFJLEVBQTZCLEVBQUUsQ0FBQyxDQUFDO0lBQzlELElBQUk7SUFDSixPQUFPLEVBQUUsUUFBUSxDQUFDLE9BQU87SUFDekIsTUFBTSxFQUFFLFFBQVEsQ0FBQyxNQUFNO0lBQ3ZCLGFBQWEsRUFBRSxRQUFRLENBQUMsYUFBYTtDQUN0QyxDQUFDLENBQUMsQ0FBQTtBQUVMOztHQUVHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sY0FBYyxHQUFHLENBQzVCLE1BQXVELEVBQ3ZELE1BQTRCLEVBQzVCLEVBQUU7SUFDRixPQUFPLFVBQVUsQ0FBQyxTQUFTLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUE7QUFDN0YsQ0FBQyxDQUFBO0FBRUQ7O0dBRUc7QUFDSCxNQUFNLENBQUMsTUFBTSxvQkFBb0IsR0FBRyxDQUNsQyxNQUF1RCxFQUN2RCxNQUF3QixFQUN4QixFQUFFO0lBQ0YsT0FBTyxVQUFVLENBQUMsU0FBUyxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxpQkFBaUIsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUE7QUFDN0YsQ0FBQyxDQUFBO0FBRUQ7O0dBRUc7QUFDSCxNQUFNLENBQUMsTUFBTSxzQkFBc0IsR0FBRyxDQVdwQyxNQUF1RCxFQUN2RCxNQUE0QixFQUM1QixFQUFFO0lBQ0YsT0FBTyxVQUFVLENBQUMsU0FBUyxDQUN6QixNQUFNLEVBQ04sQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUNKLE1BQU0sQ0FBQyxPQUFPLENBQ1osb0JBQW9CLENBQUMsQ0FBQyxDQUFDLEVBQ3ZCLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUMvRSxDQUNKLENBQUE7QUFDSCxDQUFDLENBQUE7QUFFRCw0REFBNEQ7QUFDNUQsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUFHLENBQU8sTUFBdUQsRUFBRSxFQUFFLENBQzFGLFVBQVU7S0FDUCxVQUFVLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxpQkFBaUIsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUM7S0FDMUQsSUFBSSxDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsT0FBTyxFQUFFLEVBQUUsQ0FDeEMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUN6QixNQUFNO0tBQ0QsY0FBYyxDQUFDLFdBQVc7S0FDeEIsR0FBRyxDQUFDLFFBQVEsQ0FBQyxPQUFPLEVBQUUsY0FBYyxDQUFDLENBQUM7SUFDekMsRUFBRSxVQUFVLENBQUMsa0JBQWtCLENBQUM7SUFDbEMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxJQUFJO0lBQ2IsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQ1gsSUFBSSxlQUFlLENBQUMsYUFBYSxDQUFDO1FBQ2hDLE9BQU87UUFDUCxRQUFRO1FBQ1IsTUFBTSxFQUFFLFFBQVE7UUFDaEIsV0FBVyxFQUFFLHFCQUFxQjtjQUM5QixNQUFNLENBQUMsY0FBYyxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLE9BQU8sRUFBRSxjQUFjLENBQUMsQ0FBQztLQUM3RSxDQUFDLENBQ0gsQ0FBQyxDQUNQLENBQUMsQ0FBQSJ9
|
package/src/Request.ts
DELETED
|
@@ -1,94 +0,0 @@
|
|
|
1
|
-
import type { Schema } from "@effect-app/schema"
|
|
2
|
-
import type { Headers } from "@effect/platform/Headers"
|
|
3
|
-
import type { HttpClientResponse } from "@effect/platform/HttpClientResponse"
|
|
4
|
-
import { HttpClient, HttpClientError, HttpClientRequest, HttpHeaders } from "./http.js"
|
|
5
|
-
import { Effect, Option, S } from "./lib.js"
|
|
6
|
-
|
|
7
|
-
export interface ResponseWithBody<A> extends Pick<HttpClientResponse, "headers" | "status" | "remoteAddress"> {
|
|
8
|
-
readonly body: A
|
|
9
|
-
}
|
|
10
|
-
|
|
11
|
-
// TODO: consider rebuilding the text/json helpers to use a cached effect
|
|
12
|
-
// https://discord.com/channels/795981131316985866/1098177242598756412/1168565257569046712
|
|
13
|
-
|
|
14
|
-
/**
|
|
15
|
-
* @tsplus getter effect/platform/Http/ClientResponse responseWithJsonBody
|
|
16
|
-
*/
|
|
17
|
-
export const responseWithJsonBody = (
|
|
18
|
-
response: HttpClientResponse
|
|
19
|
-
) =>
|
|
20
|
-
Effect.map(response.json, (body): ResponseWithBody<unknown> => ({
|
|
21
|
-
body,
|
|
22
|
-
headers: response.headers,
|
|
23
|
-
status: response.status,
|
|
24
|
-
remoteAddress: response.remoteAddress
|
|
25
|
-
}))
|
|
26
|
-
|
|
27
|
-
/**
|
|
28
|
-
* @tsplus fluent effect/platform/Http/Client schemaJsonBody
|
|
29
|
-
*/
|
|
30
|
-
export const schemaJsonBody = <RS, To, From, E, R>(
|
|
31
|
-
client: HttpClient.HttpClient<HttpClientResponse, E, R>,
|
|
32
|
-
schema: Schema<To, From, RS>
|
|
33
|
-
) => {
|
|
34
|
-
return HttpClient.mapEffect(client, (_) => Effect.flatMap(_.json, S.decodeUnknown(schema)))
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
/**
|
|
38
|
-
* @tsplus fluent effect/platform/Http/Client schemaJsonBodyUnsafe
|
|
39
|
-
*/
|
|
40
|
-
export const schemaJsonBodyUnsafe = <To, From, E, R>(
|
|
41
|
-
client: HttpClient.HttpClient<HttpClientResponse, E, R>,
|
|
42
|
-
schema: Schema<To, From>
|
|
43
|
-
) => {
|
|
44
|
-
return HttpClient.mapEffect(client, (_) => Effect.map(_.json, S.decodeUnknownSync(schema)))
|
|
45
|
-
}
|
|
46
|
-
|
|
47
|
-
/**
|
|
48
|
-
* @tsplus fluent effect/platform/Http/Client responseWithSchemaBody
|
|
49
|
-
*/
|
|
50
|
-
export const responseWithSchemaBody = <
|
|
51
|
-
To,
|
|
52
|
-
From extends {
|
|
53
|
-
readonly status?: number
|
|
54
|
-
readonly headers?: Headers
|
|
55
|
-
readonly body?: unknown
|
|
56
|
-
},
|
|
57
|
-
RS,
|
|
58
|
-
E,
|
|
59
|
-
R
|
|
60
|
-
>(
|
|
61
|
-
client: HttpClient.HttpClient<HttpClientResponse, E, R>,
|
|
62
|
-
schema: Schema<To, From, RS>
|
|
63
|
-
) => {
|
|
64
|
-
return HttpClient.mapEffect(
|
|
65
|
-
client,
|
|
66
|
-
(_) =>
|
|
67
|
-
Effect.flatMap(
|
|
68
|
-
responseWithJsonBody(_),
|
|
69
|
-
(_) => Effect.map(S.decodeUnknown(schema)(_.body), (body) => ({ ..._, body }))
|
|
70
|
-
)
|
|
71
|
-
)
|
|
72
|
-
}
|
|
73
|
-
|
|
74
|
-
/** @tsplus getter effect/platform/Http/Client demandJson */
|
|
75
|
-
export const demandJson = <E, R>(client: HttpClient.HttpClient<HttpClientResponse, E, R>) =>
|
|
76
|
-
HttpClient
|
|
77
|
-
.mapRequest(client, (_) => HttpClientRequest.acceptJson(_))
|
|
78
|
-
.pipe(HttpClient.transform((r, request) =>
|
|
79
|
-
Effect.tap(r, (response) =>
|
|
80
|
-
Option
|
|
81
|
-
.getOrUndefined(HttpHeaders
|
|
82
|
-
.get(response.headers, "Content-Type"))
|
|
83
|
-
?.startsWith("application/json")
|
|
84
|
-
? Effect.void
|
|
85
|
-
: Effect.fail(
|
|
86
|
-
new HttpClientError.ResponseError({
|
|
87
|
-
request,
|
|
88
|
-
response,
|
|
89
|
-
reason: "Decode",
|
|
90
|
-
description: "not json response: "
|
|
91
|
-
+ Option.getOrUndefined(HttpHeaders.get(response.headers, "Content-Type"))
|
|
92
|
-
})
|
|
93
|
-
))
|
|
94
|
-
))
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
// packages/prelude/vitest.config.ts
|
|
2
|
-
import { defineConfig } from "file:///Users/patrickroza/pj/effect-app/libs/node_modules/.pnpm/vite@5.1.5_@types+node@20.11.25/node_modules/vite/dist/node/index.js";
|
|
3
|
-
|
|
4
|
-
// vite.config.base.ts
|
|
5
|
-
import path from "path";
|
|
6
|
-
import fs from "fs";
|
|
7
|
-
var __vite_injected_original_dirname = "/Users/patrickroza/pj/effect-app/libs";
|
|
8
|
-
function makeConfig(dirName) {
|
|
9
|
-
const prefix = path.resolve(__vite_injected_original_dirname, "packages");
|
|
10
|
-
const packages = fs.readdirSync(prefix).map((f) => prefix + "/" + f).filter((f) => fs.lstatSync(f).isDirectory());
|
|
11
|
-
const cfg = {
|
|
12
|
-
// eslint-disable-next-line @typescript-eslint/no-var-requires
|
|
13
|
-
//plugins: [autoImport],
|
|
14
|
-
test: {
|
|
15
|
-
include: ["./test/**/*.test.{js,mjs,cjs,ts,mts,cts,jsx,tsx}"],
|
|
16
|
-
reporters: "verbose",
|
|
17
|
-
globals: true
|
|
18
|
-
},
|
|
19
|
-
resolve: packages.reduce((acc, cur) => {
|
|
20
|
-
acc[JSON.parse(fs.readFileSync(cur + "/package.json", "utf-8")).name] = path.resolve(cur, "src");
|
|
21
|
-
return acc;
|
|
22
|
-
}, {})
|
|
23
|
-
};
|
|
24
|
-
return cfg;
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
// packages/prelude/vitest.config.ts
|
|
28
|
-
var __vite_injected_original_dirname2 = "/Users/patrickroza/pj/effect-app/libs/packages/prelude";
|
|
29
|
-
var vitest_config_default = defineConfig(makeConfig(__vite_injected_original_dirname2));
|
|
30
|
-
export {
|
|
31
|
-
vitest_config_default as default
|
|
32
|
-
};
|
|
33
|
-
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsicGFja2FnZXMvcHJlbHVkZS92aXRlc3QuY29uZmlnLnRzIiwgInZpdGUuY29uZmlnLmJhc2UudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbImNvbnN0IF9fdml0ZV9pbmplY3RlZF9vcmlnaW5hbF9kaXJuYW1lID0gXCIvVXNlcnMvcGF0cmlja3JvemEvcGovZWZmZWN0LWFwcC9saWJzL3BhY2thZ2VzL3ByZWx1ZGVcIjtjb25zdCBfX3ZpdGVfaW5qZWN0ZWRfb3JpZ2luYWxfZmlsZW5hbWUgPSBcIi9Vc2Vycy9wYXRyaWNrcm96YS9wai9lZmZlY3QtYXBwL2xpYnMvcGFja2FnZXMvcHJlbHVkZS92aXRlc3QuY29uZmlnLnRzXCI7Y29uc3QgX192aXRlX2luamVjdGVkX29yaWdpbmFsX2ltcG9ydF9tZXRhX3VybCA9IFwiZmlsZTovLy9Vc2Vycy9wYXRyaWNrcm96YS9wai9lZmZlY3QtYXBwL2xpYnMvcGFja2FnZXMvcHJlbHVkZS92aXRlc3QuY29uZmlnLnRzXCI7Ly8vIDxyZWZlcmVuY2UgdHlwZXM9XCJ2aXRlc3RcIiAvPlxuaW1wb3J0IHsgZGVmaW5lQ29uZmlnIH0gZnJvbSBcInZpdGVcIlxuaW1wb3J0IG1ha2VDb25maWcgZnJvbSBcIi4uLy4uL3ZpdGUuY29uZmlnLmJhc2VcIlxuXG5leHBvcnQgZGVmYXVsdCBkZWZpbmVDb25maWcobWFrZUNvbmZpZyhfX2Rpcm5hbWUpKVxuIiwgImNvbnN0IF9fdml0ZV9pbmplY3RlZF9vcmlnaW5hbF9kaXJuYW1lID0gXCIvVXNlcnMvcGF0cmlja3JvemEvcGovZWZmZWN0LWFwcC9saWJzXCI7Y29uc3QgX192aXRlX2luamVjdGVkX29yaWdpbmFsX2ZpbGVuYW1lID0gXCIvVXNlcnMvcGF0cmlja3JvemEvcGovZWZmZWN0LWFwcC9saWJzL3ZpdGUuY29uZmlnLmJhc2UudHNcIjtjb25zdCBfX3ZpdGVfaW5qZWN0ZWRfb3JpZ2luYWxfaW1wb3J0X21ldGFfdXJsID0gXCJmaWxlOi8vL1VzZXJzL3BhdHJpY2tyb3phL3BqL2VmZmVjdC1hcHAvbGlicy92aXRlLmNvbmZpZy5iYXNlLnRzXCI7Ly8vIDxyZWZlcmVuY2UgdHlwZXM9XCJ2aXRlc3RcIiAvPlxuaW1wb3J0IHBhdGggZnJvbSBcInBhdGhcIlxuaW1wb3J0IGZzIGZyb20gXCJmc1wiXG5pbXBvcnQgQXV0b0ltcG9ydCBmcm9tIFwidW5wbHVnaW4tYXV0by1pbXBvcnQvdml0ZVwiXG5pbXBvcnQgeyBkZWZpbmVDb25maWcgfSBmcm9tIFwidml0ZXN0L2NvbmZpZ1wiXG5cbi8vIGNvbnN0IGF1dG9JbXBvcnQgPSBBdXRvSW1wb3J0KHtcbi8vICAgZHRzOiBcIi4vdGVzdC9hdXRvLWltcG9ydHMuZC50c1wiLFxuLy8gICAvLyBpbmNsdWRlOiBbXG4vLyAgIC8vICAgL1xcLnRlc3RcXC5bdGpdc3g/JC8gLy8gLnRzLCAudHN4LCAuanMsIC5qc3hcbi8vICAgLy8gXSxcbi8vICAgaW1wb3J0czogW1xuLy8gICAgIFwidml0ZXN0XCJcbi8vICAgXVxuLy8gfSlcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gbWFrZUNvbmZpZyhkaXJOYW1lPzogc3RyaW5nKSB7XG4gIGNvbnN0IHByZWZpeCA9IHBhdGgucmVzb2x2ZShfX2Rpcm5hbWUsIFwicGFja2FnZXNcIilcbiAgY29uc3QgcGFja2FnZXMgPSBmcy5yZWFkZGlyU3luYyhwcmVmaXgpLm1hcChmID0+IHByZWZpeCArIFwiL1wiICsgZikuZmlsdGVyKGYgPT4gZnMubHN0YXRTeW5jKGYpLmlzRGlyZWN0b3J5KCkgKVxuICBjb25zdCBjZmcgPSB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby12YXItcmVxdWlyZXNcbiAgICAvL3BsdWdpbnM6IFthdXRvSW1wb3J0XSxcbiAgICB0ZXN0OiB7XG4gICAgICBpbmNsdWRlOiAgW1wiLi90ZXN0LyoqLyoudGVzdC57anMsbWpzLGNqcyx0cyxtdHMsY3RzLGpzeCx0c3h9XCJdLFxuICAgICAgcmVwb3J0ZXJzOiBcInZlcmJvc2VcIixcbiAgICAgIGdsb2JhbHM6IHRydWVcbiAgICB9LFxuICAgIHJlc29sdmU6IHBhY2thZ2VzLnJlZHVjZSgoYWNjLCBjdXIpID0+IHtcbiAgICAgIGFjY1tKU09OLnBhcnNlKGZzLnJlYWRGaWxlU3luYyhjdXIgKyBcIi9wYWNrYWdlLmpzb25cIiwgXCJ1dGYtOFwiKSkubmFtZV0gPSBwYXRoLnJlc29sdmUoY3VyLCBcInNyY1wiKVxuICAgICAgcmV0dXJuIGFjY1xuICAgIH0sIHt9KVxuICB9XG4gIC8vY29uc29sZS5sb2coY2ZnKVxuICByZXR1cm4gY2ZnXG59XG4iXSwKICAibWFwcGluZ3MiOiAiO0FBQ0EsU0FBUyxvQkFBb0I7OztBQ0E3QixPQUFPLFVBQVU7QUFDakIsT0FBTyxRQUFRO0FBRmYsSUFBTSxtQ0FBbUM7QUFnQjFCLFNBQVIsV0FBNEIsU0FBa0I7QUFDbkQsUUFBTSxTQUFTLEtBQUssUUFBUSxrQ0FBVyxVQUFVO0FBQ2pELFFBQU0sV0FBVyxHQUFHLFlBQVksTUFBTSxFQUFFLElBQUksT0FBSyxTQUFTLE1BQU0sQ0FBQyxFQUFFLE9BQU8sT0FBSyxHQUFHLFVBQVUsQ0FBQyxFQUFFLFlBQVksQ0FBRTtBQUM3RyxRQUFNLE1BQU07QUFBQTtBQUFBO0FBQUEsSUFHVixNQUFNO0FBQUEsTUFDSixTQUFVLENBQUMsa0RBQWtEO0FBQUEsTUFDN0QsV0FBVztBQUFBLE1BQ1gsU0FBUztBQUFBLElBQ1g7QUFBQSxJQUNBLFNBQVMsU0FBUyxPQUFPLENBQUMsS0FBSyxRQUFRO0FBQ3JDLFVBQUksS0FBSyxNQUFNLEdBQUcsYUFBYSxNQUFNLGlCQUFpQixPQUFPLENBQUMsRUFBRSxJQUFJLElBQUksS0FBSyxRQUFRLEtBQUssS0FBSztBQUMvRixhQUFPO0FBQUEsSUFDVCxHQUFHLENBQUMsQ0FBQztBQUFBLEVBQ1A7QUFFQSxTQUFPO0FBQ1Q7OztBRGxDQSxJQUFNQSxvQ0FBbUM7QUFJekMsSUFBTyx3QkFBUSxhQUFhLFdBQVdDLGlDQUFTLENBQUM7IiwKICAibmFtZXMiOiBbIl9fdml0ZV9pbmplY3RlZF9vcmlnaW5hbF9kaXJuYW1lIiwgIl9fdml0ZV9pbmplY3RlZF9vcmlnaW5hbF9kaXJuYW1lIl0KfQo=
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
// packages/prelude/vitest.config.ts
|
|
2
|
-
import { defineConfig } from "file:///Users/patrickroza/pj/effect-app/libs/node_modules/.pnpm/vite@5.2.6_@types+node@20.11.30/node_modules/vite/dist/node/index.js";
|
|
3
|
-
|
|
4
|
-
// vite.config.base.ts
|
|
5
|
-
import path from "path";
|
|
6
|
-
import fs from "fs";
|
|
7
|
-
var __vite_injected_original_dirname = "/Users/patrickroza/pj/effect-app/libs";
|
|
8
|
-
function makeConfig(dirName) {
|
|
9
|
-
const prefix = path.resolve(__vite_injected_original_dirname, "packages");
|
|
10
|
-
const packages = fs.readdirSync(prefix).map((f) => prefix + "/" + f).filter((f) => fs.lstatSync(f).isDirectory());
|
|
11
|
-
const cfg = {
|
|
12
|
-
// eslint-disable-next-line @typescript-eslint/no-var-requires
|
|
13
|
-
//plugins: [autoImport],
|
|
14
|
-
test: {
|
|
15
|
-
include: ["./test/**/*.test.{js,mjs,cjs,ts,mts,cts,jsx,tsx}"],
|
|
16
|
-
reporters: "verbose",
|
|
17
|
-
globals: true
|
|
18
|
-
},
|
|
19
|
-
resolve: {
|
|
20
|
-
alias: packages.reduce((acc, cur) => {
|
|
21
|
-
acc[JSON.parse(fs.readFileSync(cur + "/package.json", "utf-8")).name] = path.resolve(cur, cur.endsWith("core") ? "dist" : "src");
|
|
22
|
-
return acc;
|
|
23
|
-
}, {})
|
|
24
|
-
// "@effect-app/core/Prelude": path.join(__dirname, "packages/core/src/Prelude.code.ts")
|
|
25
|
-
}
|
|
26
|
-
};
|
|
27
|
-
console.log(cfg);
|
|
28
|
-
return cfg;
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
// packages/prelude/vitest.config.ts
|
|
32
|
-
var __vite_injected_original_dirname2 = "/Users/patrickroza/pj/effect-app/libs/packages/prelude";
|
|
33
|
-
var vitest_config_default = defineConfig(makeConfig(__vite_injected_original_dirname2));
|
|
34
|
-
export {
|
|
35
|
-
vitest_config_default as default
|
|
36
|
-
};
|
|
37
|
-
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsicGFja2FnZXMvcHJlbHVkZS92aXRlc3QuY29uZmlnLnRzIiwgInZpdGUuY29uZmlnLmJhc2UudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbImNvbnN0IF9fdml0ZV9pbmplY3RlZF9vcmlnaW5hbF9kaXJuYW1lID0gXCIvVXNlcnMvcGF0cmlja3JvemEvcGovZWZmZWN0LWFwcC9saWJzL3BhY2thZ2VzL3ByZWx1ZGVcIjtjb25zdCBfX3ZpdGVfaW5qZWN0ZWRfb3JpZ2luYWxfZmlsZW5hbWUgPSBcIi9Vc2Vycy9wYXRyaWNrcm96YS9wai9lZmZlY3QtYXBwL2xpYnMvcGFja2FnZXMvcHJlbHVkZS92aXRlc3QuY29uZmlnLnRzXCI7Y29uc3QgX192aXRlX2luamVjdGVkX29yaWdpbmFsX2ltcG9ydF9tZXRhX3VybCA9IFwiZmlsZTovLy9Vc2Vycy9wYXRyaWNrcm96YS9wai9lZmZlY3QtYXBwL2xpYnMvcGFja2FnZXMvcHJlbHVkZS92aXRlc3QuY29uZmlnLnRzXCI7Ly8vIDxyZWZlcmVuY2UgdHlwZXM9XCJ2aXRlc3RcIiAvPlxuaW1wb3J0IHsgZGVmaW5lQ29uZmlnIH0gZnJvbSBcInZpdGVcIlxuaW1wb3J0IG1ha2VDb25maWcgZnJvbSBcIi4uLy4uL3ZpdGUuY29uZmlnLmJhc2VcIlxuXG5leHBvcnQgZGVmYXVsdCBkZWZpbmVDb25maWcobWFrZUNvbmZpZyhfX2Rpcm5hbWUpKVxuIiwgImNvbnN0IF9fdml0ZV9pbmplY3RlZF9vcmlnaW5hbF9kaXJuYW1lID0gXCIvVXNlcnMvcGF0cmlja3JvemEvcGovZWZmZWN0LWFwcC9saWJzXCI7Y29uc3QgX192aXRlX2luamVjdGVkX29yaWdpbmFsX2ZpbGVuYW1lID0gXCIvVXNlcnMvcGF0cmlja3JvemEvcGovZWZmZWN0LWFwcC9saWJzL3ZpdGUuY29uZmlnLmJhc2UudHNcIjtjb25zdCBfX3ZpdGVfaW5qZWN0ZWRfb3JpZ2luYWxfaW1wb3J0X21ldGFfdXJsID0gXCJmaWxlOi8vL1VzZXJzL3BhdHJpY2tyb3phL3BqL2VmZmVjdC1hcHAvbGlicy92aXRlLmNvbmZpZy5iYXNlLnRzXCI7Ly8vIDxyZWZlcmVuY2UgdHlwZXM9XCJ2aXRlc3RcIiAvPlxuaW1wb3J0IHBhdGggZnJvbSBcInBhdGhcIlxuaW1wb3J0IGZzIGZyb20gXCJmc1wiXG5pbXBvcnQgQXV0b0ltcG9ydCBmcm9tIFwidW5wbHVnaW4tYXV0by1pbXBvcnQvdml0ZVwiXG5pbXBvcnQgeyBkZWZpbmVDb25maWcgfSBmcm9tIFwidml0ZXN0L2NvbmZpZ1wiXG5cbi8vIGNvbnN0IGF1dG9JbXBvcnQgPSBBdXRvSW1wb3J0KHtcbi8vICAgZHRzOiBcIi4vdGVzdC9hdXRvLWltcG9ydHMuZC50c1wiLFxuLy8gICAvLyBpbmNsdWRlOiBbXG4vLyAgIC8vICAgL1xcLnRlc3RcXC5bdGpdc3g/JC8gLy8gLnRzLCAudHN4LCAuanMsIC5qc3hcbi8vICAgLy8gXSxcbi8vICAgaW1wb3J0czogW1xuLy8gICAgIFwidml0ZXN0XCJcbi8vICAgXVxuLy8gfSlcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gbWFrZUNvbmZpZyhkaXJOYW1lPzogc3RyaW5nKSB7XG4gIGNvbnN0IHByZWZpeCA9IHBhdGgucmVzb2x2ZShfX2Rpcm5hbWUsIFwicGFja2FnZXNcIilcbiAgY29uc3QgcGFja2FnZXMgPSBmcy5yZWFkZGlyU3luYyhwcmVmaXgpLm1hcChmID0+IHByZWZpeCArIFwiL1wiICsgZikuZmlsdGVyKGYgPT4gZnMubHN0YXRTeW5jKGYpLmlzRGlyZWN0b3J5KCkgKVxuICBjb25zdCBjZmcgPSB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby12YXItcmVxdWlyZXNcbiAgICAvL3BsdWdpbnM6IFthdXRvSW1wb3J0XSxcbiAgICB0ZXN0OiB7XG4gICAgICBpbmNsdWRlOiAgW1wiLi90ZXN0LyoqLyoudGVzdC57anMsbWpzLGNqcyx0cyxtdHMsY3RzLGpzeCx0c3h9XCJdLFxuICAgICAgcmVwb3J0ZXJzOiBcInZlcmJvc2VcIixcbiAgICAgIGdsb2JhbHM6IHRydWVcbiAgICB9LFxuICAgIHJlc29sdmU6IHtcbiAgICAgIGFsaWFzOiBwYWNrYWdlcy5yZWR1Y2UoKGFjYywgY3VyKSA9PiB7IC8vIHdvcmthcm91bmQgZm9yIC9QcmVsdWRlIGlzc3VlXG4gICAgICBhY2NbSlNPTi5wYXJzZShmcy5yZWFkRmlsZVN5bmMoY3VyICsgXCIvcGFja2FnZS5qc29uXCIsIFwidXRmLThcIikpLm5hbWVdID0gcGF0aC5yZXNvbHZlKGN1ciwgY3VyLmVuZHNXaXRoKFwiY29yZVwiKSA/IFwiZGlzdFwiIDogXCJzcmNcIilcbiAgICAgIHJldHVybiBhY2NcbiAgICB9LCB7IH0pIC8vIFwiQGVmZmVjdC1hcHAvY29yZS9QcmVsdWRlXCI6IHBhdGguam9pbihfX2Rpcm5hbWUsIFwicGFja2FnZXMvY29yZS9zcmMvUHJlbHVkZS5jb2RlLnRzXCIpXG4gIH1cbiAgfVxuICBjb25zb2xlLmxvZyhjZmcpXG4gIHJldHVybiBjZmdcbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7QUFDQSxTQUFTLG9CQUFvQjs7O0FDQTdCLE9BQU8sVUFBVTtBQUNqQixPQUFPLFFBQVE7QUFGZixJQUFNLG1DQUFtQztBQWdCMUIsU0FBUixXQUE0QixTQUFrQjtBQUNuRCxRQUFNLFNBQVMsS0FBSyxRQUFRLGtDQUFXLFVBQVU7QUFDakQsUUFBTSxXQUFXLEdBQUcsWUFBWSxNQUFNLEVBQUUsSUFBSSxPQUFLLFNBQVMsTUFBTSxDQUFDLEVBQUUsT0FBTyxPQUFLLEdBQUcsVUFBVSxDQUFDLEVBQUUsWUFBWSxDQUFFO0FBQzdHLFFBQU0sTUFBTTtBQUFBO0FBQUE7QUFBQSxJQUdWLE1BQU07QUFBQSxNQUNKLFNBQVUsQ0FBQyxrREFBa0Q7QUFBQSxNQUM3RCxXQUFXO0FBQUEsTUFDWCxTQUFTO0FBQUEsSUFDWDtBQUFBLElBQ0EsU0FBUztBQUFBLE1BQ1AsT0FBTyxTQUFTLE9BQU8sQ0FBQyxLQUFLLFFBQVE7QUFDckMsWUFBSSxLQUFLLE1BQU0sR0FBRyxhQUFhLE1BQU0saUJBQWlCLE9BQU8sQ0FBQyxFQUFFLElBQUksSUFBSSxLQUFLLFFBQVEsS0FBSyxJQUFJLFNBQVMsTUFBTSxJQUFJLFNBQVMsS0FBSztBQUMvSCxlQUFPO0FBQUEsTUFDVCxHQUFHLENBQUUsQ0FBQztBQUFBO0FBQUEsSUFDUjtBQUFBLEVBQ0E7QUFDQSxVQUFRLElBQUksR0FBRztBQUNmLFNBQU87QUFDVDs7O0FEcENBLElBQU1BLG9DQUFtQztBQUl6QyxJQUFPLHdCQUFRLGFBQWEsV0FBV0MsaUNBQVMsQ0FBQzsiLAogICJuYW1lcyI6IFsiX192aXRlX2luamVjdGVkX29yaWdpbmFsX2Rpcm5hbWUiLCAiX192aXRlX2luamVjdGVkX29yaWdpbmFsX2Rpcm5hbWUiXQp9Cg==
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
// packages/prelude/vitest.config.ts
|
|
2
|
-
import { defineConfig } from "file:///Users/patrickroza/pj/effect-app/libs/node_modules/.pnpm/vite@5.2.6_@types+node@20.11.30/node_modules/vite/dist/node/index.js";
|
|
3
|
-
|
|
4
|
-
// vite.config.base.ts
|
|
5
|
-
import path from "path";
|
|
6
|
-
import fs from "fs";
|
|
7
|
-
var __vite_injected_original_dirname = "/Users/patrickroza/pj/effect-app/libs";
|
|
8
|
-
function makeConfig(dirName) {
|
|
9
|
-
const prefix = path.resolve(__vite_injected_original_dirname, "packages");
|
|
10
|
-
const packages = fs.readdirSync(prefix).map((f) => prefix + "/" + f).filter((f) => fs.lstatSync(f).isDirectory());
|
|
11
|
-
const cfg = {
|
|
12
|
-
// eslint-disable-next-line @typescript-eslint/no-var-requires
|
|
13
|
-
//plugins: [autoImport],
|
|
14
|
-
test: {
|
|
15
|
-
include: ["./test/**/*.test.{js,mjs,cjs,ts,mts,cts,jsx,tsx}"],
|
|
16
|
-
reporters: "verbose",
|
|
17
|
-
globals: true
|
|
18
|
-
},
|
|
19
|
-
resolve: {
|
|
20
|
-
alias: packages.reduce((acc, cur) => {
|
|
21
|
-
acc[JSON.parse(fs.readFileSync(cur + "/package.json", "utf-8")).name] = path.resolve(cur, cur.endsWith("core") ? "dist" : "src");
|
|
22
|
-
return acc;
|
|
23
|
-
}, {})
|
|
24
|
-
// "@effect-app/core/Prelude": path.join(__dirname, "packages/core/src/Prelude.code.ts")
|
|
25
|
-
}
|
|
26
|
-
};
|
|
27
|
-
console.log(cfg);
|
|
28
|
-
return cfg;
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
// packages/prelude/vitest.config.ts
|
|
32
|
-
var __vite_injected_original_dirname2 = "/Users/patrickroza/pj/effect-app/libs/packages/prelude";
|
|
33
|
-
var vitest_config_default = defineConfig(makeConfig(__vite_injected_original_dirname2));
|
|
34
|
-
export {
|
|
35
|
-
vitest_config_default as default
|
|
36
|
-
};
|
|
37
|
-
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsicGFja2FnZXMvcHJlbHVkZS92aXRlc3QuY29uZmlnLnRzIiwgInZpdGUuY29uZmlnLmJhc2UudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbImNvbnN0IF9fdml0ZV9pbmplY3RlZF9vcmlnaW5hbF9kaXJuYW1lID0gXCIvVXNlcnMvcGF0cmlja3JvemEvcGovZWZmZWN0LWFwcC9saWJzL3BhY2thZ2VzL3ByZWx1ZGVcIjtjb25zdCBfX3ZpdGVfaW5qZWN0ZWRfb3JpZ2luYWxfZmlsZW5hbWUgPSBcIi9Vc2Vycy9wYXRyaWNrcm96YS9wai9lZmZlY3QtYXBwL2xpYnMvcGFja2FnZXMvcHJlbHVkZS92aXRlc3QuY29uZmlnLnRzXCI7Y29uc3QgX192aXRlX2luamVjdGVkX29yaWdpbmFsX2ltcG9ydF9tZXRhX3VybCA9IFwiZmlsZTovLy9Vc2Vycy9wYXRyaWNrcm96YS9wai9lZmZlY3QtYXBwL2xpYnMvcGFja2FnZXMvcHJlbHVkZS92aXRlc3QuY29uZmlnLnRzXCI7Ly8vIDxyZWZlcmVuY2UgdHlwZXM9XCJ2aXRlc3RcIiAvPlxuaW1wb3J0IHsgZGVmaW5lQ29uZmlnIH0gZnJvbSBcInZpdGVcIlxuaW1wb3J0IG1ha2VDb25maWcgZnJvbSBcIi4uLy4uL3ZpdGUuY29uZmlnLmJhc2VcIlxuXG5leHBvcnQgZGVmYXVsdCBkZWZpbmVDb25maWcobWFrZUNvbmZpZyhfX2Rpcm5hbWUpKVxuIiwgImNvbnN0IF9fdml0ZV9pbmplY3RlZF9vcmlnaW5hbF9kaXJuYW1lID0gXCIvVXNlcnMvcGF0cmlja3JvemEvcGovZWZmZWN0LWFwcC9saWJzXCI7Y29uc3QgX192aXRlX2luamVjdGVkX29yaWdpbmFsX2ZpbGVuYW1lID0gXCIvVXNlcnMvcGF0cmlja3JvemEvcGovZWZmZWN0LWFwcC9saWJzL3ZpdGUuY29uZmlnLmJhc2UudHNcIjtjb25zdCBfX3ZpdGVfaW5qZWN0ZWRfb3JpZ2luYWxfaW1wb3J0X21ldGFfdXJsID0gXCJmaWxlOi8vL1VzZXJzL3BhdHJpY2tyb3phL3BqL2VmZmVjdC1hcHAvbGlicy92aXRlLmNvbmZpZy5iYXNlLnRzXCI7Ly8vIDxyZWZlcmVuY2UgdHlwZXM9XCJ2aXRlc3RcIiAvPlxuaW1wb3J0IHBhdGggZnJvbSBcInBhdGhcIlxuaW1wb3J0IGZzIGZyb20gXCJmc1wiXG5pbXBvcnQgQXV0b0ltcG9ydCBmcm9tIFwidW5wbHVnaW4tYXV0by1pbXBvcnQvdml0ZVwiXG5pbXBvcnQgeyBkZWZpbmVDb25maWcgfSBmcm9tIFwidml0ZXN0L2NvbmZpZ1wiXG5cbi8vIGNvbnN0IGF1dG9JbXBvcnQgPSBBdXRvSW1wb3J0KHtcbi8vICAgZHRzOiBcIi4vdGVzdC9hdXRvLWltcG9ydHMuZC50c1wiLFxuLy8gICAvLyBpbmNsdWRlOiBbXG4vLyAgIC8vICAgL1xcLnRlc3RcXC5bdGpdc3g/JC8gLy8gLnRzLCAudHN4LCAuanMsIC5qc3hcbi8vICAgLy8gXSxcbi8vICAgaW1wb3J0czogW1xuLy8gICAgIFwidml0ZXN0XCJcbi8vICAgXVxuLy8gfSlcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gbWFrZUNvbmZpZyhkaXJOYW1lPzogc3RyaW5nKSB7XG4gIGNvbnN0IHByZWZpeCA9IHBhdGgucmVzb2x2ZShfX2Rpcm5hbWUsIFwicGFja2FnZXNcIilcbiAgY29uc3QgcGFja2FnZXMgPSBmcy5yZWFkZGlyU3luYyhwcmVmaXgpLm1hcChmID0+IHByZWZpeCArIFwiL1wiICsgZikuZmlsdGVyKGYgPT4gZnMubHN0YXRTeW5jKGYpLmlzRGlyZWN0b3J5KCkgKVxuICBjb25zdCBjZmcgPSB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby12YXItcmVxdWlyZXNcbiAgICAvL3BsdWdpbnM6IFthdXRvSW1wb3J0XSxcbiAgICB0ZXN0OiB7XG4gICAgICBpbmNsdWRlOiAgW1wiLi90ZXN0LyoqLyoudGVzdC57anMsbWpzLGNqcyx0cyxtdHMsY3RzLGpzeCx0c3h9XCJdLFxuICAgICAgcmVwb3J0ZXJzOiBcInZlcmJvc2VcIixcbiAgICAgIGdsb2JhbHM6IHRydWVcbiAgICB9LFxuICAgIHJlc29sdmU6IHtcbiAgICAgIGFsaWFzOiBwYWNrYWdlcy5yZWR1Y2UoKGFjYywgY3VyKSA9PiB7IC8vIHdvcmthcm91bmQgZm9yIC9QcmVsdWRlIGlzc3VlXG4gICAgICBhY2NbSlNPTi5wYXJzZShmcy5yZWFkRmlsZVN5bmMoY3VyICsgXCIvcGFja2FnZS5qc29uXCIsIFwidXRmLThcIikpLm5hbWVdID0gcGF0aC5yZXNvbHZlKGN1ciwgY3VyLmVuZHNXaXRoKFwiY29yZVwiKSA/IFwiZGlzdFwiIDogXCJzcmNcIilcbiAgICAgIHJldHVybiBhY2NcbiAgICB9LCB7IH0pIC8vIFwiQGVmZmVjdC1hcHAvY29yZS9QcmVsdWRlXCI6IHBhdGguam9pbihfX2Rpcm5hbWUsIFwicGFja2FnZXMvY29yZS9zcmMvUHJlbHVkZS5jb2RlLnRzXCIpXG4gIH1cbiAgfVxuICBjb25zb2xlLmxvZyhjZmcpXG4gIHJldHVybiBjZmdcbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7QUFDQSxTQUFTLG9CQUFvQjs7O0FDQTdCLE9BQU8sVUFBVTtBQUNqQixPQUFPLFFBQVE7QUFGZixJQUFNLG1DQUFtQztBQWdCMUIsU0FBUixXQUE0QixTQUFrQjtBQUNuRCxRQUFNLFNBQVMsS0FBSyxRQUFRLGtDQUFXLFVBQVU7QUFDakQsUUFBTSxXQUFXLEdBQUcsWUFBWSxNQUFNLEVBQUUsSUFBSSxPQUFLLFNBQVMsTUFBTSxDQUFDLEVBQUUsT0FBTyxPQUFLLEdBQUcsVUFBVSxDQUFDLEVBQUUsWUFBWSxDQUFFO0FBQzdHLFFBQU0sTUFBTTtBQUFBO0FBQUE7QUFBQSxJQUdWLE1BQU07QUFBQSxNQUNKLFNBQVUsQ0FBQyxrREFBa0Q7QUFBQSxNQUM3RCxXQUFXO0FBQUEsTUFDWCxTQUFTO0FBQUEsSUFDWDtBQUFBLElBQ0EsU0FBUztBQUFBLE1BQ1AsT0FBTyxTQUFTLE9BQU8sQ0FBQyxLQUFLLFFBQVE7QUFDckMsWUFBSSxLQUFLLE1BQU0sR0FBRyxhQUFhLE1BQU0saUJBQWlCLE9BQU8sQ0FBQyxFQUFFLElBQUksSUFBSSxLQUFLLFFBQVEsS0FBSyxJQUFJLFNBQVMsTUFBTSxJQUFJLFNBQVMsS0FBSztBQUMvSCxlQUFPO0FBQUEsTUFDVCxHQUFHLENBQUUsQ0FBQztBQUFBO0FBQUEsSUFDUjtBQUFBLEVBQ0E7QUFDQSxVQUFRLElBQUksR0FBRztBQUNmLFNBQU87QUFDVDs7O0FEcENBLElBQU1BLG9DQUFtQztBQUl6QyxJQUFPLHdCQUFRLGFBQWEsV0FBV0MsaUNBQVMsQ0FBQzsiLAogICJuYW1lcyI6IFsiX192aXRlX2luamVjdGVkX29yaWdpbmFsX2Rpcm5hbWUiLCAiX192aXRlX2luamVjdGVkX29yaWdpbmFsX2Rpcm5hbWUiXQp9Cg==
|
|
File without changes
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
// packages/prelude/vitest.config.ts
|
|
2
|
-
import { defineConfig } from "file:///Users/patrickroza/pj/effect-app/libs/node_modules/.pnpm/vite@5.2.6_@types+node@20.11.30/node_modules/vite/dist/node/index.js";
|
|
3
|
-
|
|
4
|
-
// vite.config.base.ts
|
|
5
|
-
import path from "path";
|
|
6
|
-
import fs from "fs";
|
|
7
|
-
var __vite_injected_original_dirname = "/Users/patrickroza/pj/effect-app/libs";
|
|
8
|
-
function makeConfig(dirName) {
|
|
9
|
-
const prefix = path.resolve(__vite_injected_original_dirname, "packages");
|
|
10
|
-
const packages = fs.readdirSync(prefix).map((f) => prefix + "/" + f).filter((f) => fs.lstatSync(f).isDirectory());
|
|
11
|
-
const cfg = {
|
|
12
|
-
// eslint-disable-next-line @typescript-eslint/no-var-requires
|
|
13
|
-
//plugins: [autoImport],
|
|
14
|
-
test: {
|
|
15
|
-
include: ["./test/**/*.test.{js,mjs,cjs,ts,mts,cts,jsx,tsx}"],
|
|
16
|
-
reporters: "verbose",
|
|
17
|
-
globals: true
|
|
18
|
-
},
|
|
19
|
-
resolve: {
|
|
20
|
-
alias: packages.reduce((acc, cur) => {
|
|
21
|
-
acc[JSON.parse(fs.readFileSync(cur + "/package.json", "utf-8")).name] = path.resolve(cur, cur.endsWith("core") ? "dist" : "src");
|
|
22
|
-
return acc;
|
|
23
|
-
}, {})
|
|
24
|
-
// "@effect-app/core/Prelude": path.join(__dirname, "packages/core/src/Prelude.code.ts")
|
|
25
|
-
}
|
|
26
|
-
};
|
|
27
|
-
console.log(cfg);
|
|
28
|
-
return cfg;
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
// packages/prelude/vitest.config.ts
|
|
32
|
-
var __vite_injected_original_dirname2 = "/Users/patrickroza/pj/effect-app/libs/packages/prelude";
|
|
33
|
-
var vitest_config_default = defineConfig(makeConfig(__vite_injected_original_dirname2));
|
|
34
|
-
export {
|
|
35
|
-
vitest_config_default as default
|
|
36
|
-
};
|
|
37
|
-
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsicGFja2FnZXMvcHJlbHVkZS92aXRlc3QuY29uZmlnLnRzIiwgInZpdGUuY29uZmlnLmJhc2UudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbImNvbnN0IF9fdml0ZV9pbmplY3RlZF9vcmlnaW5hbF9kaXJuYW1lID0gXCIvVXNlcnMvcGF0cmlja3JvemEvcGovZWZmZWN0LWFwcC9saWJzL3BhY2thZ2VzL3ByZWx1ZGVcIjtjb25zdCBfX3ZpdGVfaW5qZWN0ZWRfb3JpZ2luYWxfZmlsZW5hbWUgPSBcIi9Vc2Vycy9wYXRyaWNrcm96YS9wai9lZmZlY3QtYXBwL2xpYnMvcGFja2FnZXMvcHJlbHVkZS92aXRlc3QuY29uZmlnLnRzXCI7Y29uc3QgX192aXRlX2luamVjdGVkX29yaWdpbmFsX2ltcG9ydF9tZXRhX3VybCA9IFwiZmlsZTovLy9Vc2Vycy9wYXRyaWNrcm96YS9wai9lZmZlY3QtYXBwL2xpYnMvcGFja2FnZXMvcHJlbHVkZS92aXRlc3QuY29uZmlnLnRzXCI7Ly8vIDxyZWZlcmVuY2UgdHlwZXM9XCJ2aXRlc3RcIiAvPlxuaW1wb3J0IHsgZGVmaW5lQ29uZmlnIH0gZnJvbSBcInZpdGVcIlxuaW1wb3J0IG1ha2VDb25maWcgZnJvbSBcIi4uLy4uL3ZpdGUuY29uZmlnLmJhc2VcIlxuXG5leHBvcnQgZGVmYXVsdCBkZWZpbmVDb25maWcobWFrZUNvbmZpZyhfX2Rpcm5hbWUpKVxuIiwgImNvbnN0IF9fdml0ZV9pbmplY3RlZF9vcmlnaW5hbF9kaXJuYW1lID0gXCIvVXNlcnMvcGF0cmlja3JvemEvcGovZWZmZWN0LWFwcC9saWJzXCI7Y29uc3QgX192aXRlX2luamVjdGVkX29yaWdpbmFsX2ZpbGVuYW1lID0gXCIvVXNlcnMvcGF0cmlja3JvemEvcGovZWZmZWN0LWFwcC9saWJzL3ZpdGUuY29uZmlnLmJhc2UudHNcIjtjb25zdCBfX3ZpdGVfaW5qZWN0ZWRfb3JpZ2luYWxfaW1wb3J0X21ldGFfdXJsID0gXCJmaWxlOi8vL1VzZXJzL3BhdHJpY2tyb3phL3BqL2VmZmVjdC1hcHAvbGlicy92aXRlLmNvbmZpZy5iYXNlLnRzXCI7Ly8vIDxyZWZlcmVuY2UgdHlwZXM9XCJ2aXRlc3RcIiAvPlxuaW1wb3J0IHBhdGggZnJvbSBcInBhdGhcIlxuaW1wb3J0IGZzIGZyb20gXCJmc1wiXG5pbXBvcnQgQXV0b0ltcG9ydCBmcm9tIFwidW5wbHVnaW4tYXV0by1pbXBvcnQvdml0ZVwiXG5pbXBvcnQgeyBkZWZpbmVDb25maWcgfSBmcm9tIFwidml0ZXN0L2NvbmZpZ1wiXG5cbi8vIGNvbnN0IGF1dG9JbXBvcnQgPSBBdXRvSW1wb3J0KHtcbi8vICAgZHRzOiBcIi4vdGVzdC9hdXRvLWltcG9ydHMuZC50c1wiLFxuLy8gICAvLyBpbmNsdWRlOiBbXG4vLyAgIC8vICAgL1xcLnRlc3RcXC5bdGpdc3g/JC8gLy8gLnRzLCAudHN4LCAuanMsIC5qc3hcbi8vICAgLy8gXSxcbi8vICAgaW1wb3J0czogW1xuLy8gICAgIFwidml0ZXN0XCJcbi8vICAgXVxuLy8gfSlcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gbWFrZUNvbmZpZyhkaXJOYW1lPzogc3RyaW5nKSB7XG4gIGNvbnN0IHByZWZpeCA9IHBhdGgucmVzb2x2ZShfX2Rpcm5hbWUsIFwicGFja2FnZXNcIilcbiAgY29uc3QgcGFja2FnZXMgPSBmcy5yZWFkZGlyU3luYyhwcmVmaXgpLm1hcChmID0+IHByZWZpeCArIFwiL1wiICsgZikuZmlsdGVyKGYgPT4gZnMubHN0YXRTeW5jKGYpLmlzRGlyZWN0b3J5KCkgKVxuICBjb25zdCBjZmcgPSB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby12YXItcmVxdWlyZXNcbiAgICAvL3BsdWdpbnM6IFthdXRvSW1wb3J0XSxcbiAgICB0ZXN0OiB7XG4gICAgICBpbmNsdWRlOiAgW1wiLi90ZXN0LyoqLyoudGVzdC57anMsbWpzLGNqcyx0cyxtdHMsY3RzLGpzeCx0c3h9XCJdLFxuICAgICAgcmVwb3J0ZXJzOiBcInZlcmJvc2VcIixcbiAgICAgIGdsb2JhbHM6IHRydWVcbiAgICB9LFxuICAgIHJlc29sdmU6IHtcbiAgICAgIGFsaWFzOiBwYWNrYWdlcy5yZWR1Y2UoKGFjYywgY3VyKSA9PiB7IC8vIHdvcmthcm91bmQgZm9yIC9QcmVsdWRlIGlzc3VlXG4gICAgICBhY2NbSlNPTi5wYXJzZShmcy5yZWFkRmlsZVN5bmMoY3VyICsgXCIvcGFja2FnZS5qc29uXCIsIFwidXRmLThcIikpLm5hbWVdID0gcGF0aC5yZXNvbHZlKGN1ciwgY3VyLmVuZHNXaXRoKFwiY29yZVwiKSA/IFwiZGlzdFwiIDogXCJzcmNcIilcbiAgICAgIHJldHVybiBhY2NcbiAgICB9LCB7IH0pIC8vIFwiQGVmZmVjdC1hcHAvY29yZS9QcmVsdWRlXCI6IHBhdGguam9pbihfX2Rpcm5hbWUsIFwicGFja2FnZXMvY29yZS9zcmMvUHJlbHVkZS5jb2RlLnRzXCIpXG4gIH1cbiAgfVxuICBjb25zb2xlLmxvZyhjZmcpXG4gIHJldHVybiBjZmdcbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7QUFDQSxTQUFTLG9CQUFvQjs7O0FDQTdCLE9BQU8sVUFBVTtBQUNqQixPQUFPLFFBQVE7QUFGZixJQUFNLG1DQUFtQztBQWdCMUIsU0FBUixXQUE0QixTQUFrQjtBQUNuRCxRQUFNLFNBQVMsS0FBSyxRQUFRLGtDQUFXLFVBQVU7QUFDakQsUUFBTSxXQUFXLEdBQUcsWUFBWSxNQUFNLEVBQUUsSUFBSSxPQUFLLFNBQVMsTUFBTSxDQUFDLEVBQUUsT0FBTyxPQUFLLEdBQUcsVUFBVSxDQUFDLEVBQUUsWUFBWSxDQUFFO0FBQzdHLFFBQU0sTUFBTTtBQUFBO0FBQUE7QUFBQSxJQUdWLE1BQU07QUFBQSxNQUNKLFNBQVUsQ0FBQyxrREFBa0Q7QUFBQSxNQUM3RCxXQUFXO0FBQUEsTUFDWCxTQUFTO0FBQUEsSUFDWDtBQUFBLElBQ0EsU0FBUztBQUFBLE1BQ1AsT0FBTyxTQUFTLE9BQU8sQ0FBQyxLQUFLLFFBQVE7QUFDckMsWUFBSSxLQUFLLE1BQU0sR0FBRyxhQUFhLE1BQU0saUJBQWlCLE9BQU8sQ0FBQyxFQUFFLElBQUksSUFBSSxLQUFLLFFBQVEsS0FBSyxJQUFJLFNBQVMsTUFBTSxJQUFJLFNBQVMsS0FBSztBQUMvSCxlQUFPO0FBQUEsTUFDVCxHQUFHLENBQUUsQ0FBQztBQUFBO0FBQUEsSUFDUjtBQUFBLEVBQ0E7QUFDQSxVQUFRLElBQUksR0FBRztBQUNmLFNBQU87QUFDVDs7O0FEcENBLElBQU1BLG9DQUFtQztBQUl6QyxJQUFPLHdCQUFRLGFBQWEsV0FBV0MsaUNBQVMsQ0FBQzsiLAogICJuYW1lcyI6IFsiX192aXRlX2luamVjdGVkX29yaWdpbmFsX2Rpcm5hbWUiLCAiX192aXRlX2luamVjdGVkX29yaWdpbmFsX2Rpcm5hbWUiXQp9Cg==
|
|
File without changes
|