effect-app 1.23.0 → 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.
Files changed (40) hide show
  1. package/CHANGELOG.md +18 -0
  2. package/_cjs/http/Request.cjs +25 -0
  3. package/_cjs/http/Request.cjs.map +1 -0
  4. package/_cjs/http/internal/lib.cjs +33 -0
  5. package/_cjs/http/internal/lib.cjs.map +1 -0
  6. package/_cjs/http.cjs +11 -27
  7. package/_cjs/http.cjs.map +1 -1
  8. package/dist/client/clientFor.d.ts +2 -2
  9. package/dist/client/clientFor.d.ts.map +1 -1
  10. package/dist/client/req.d.ts +5 -5
  11. package/dist/client/req.d.ts.map +1 -1
  12. package/dist/http/Request.d.ts +9 -0
  13. package/dist/http/Request.d.ts.map +1 -0
  14. package/dist/http/Request.js +25 -0
  15. package/dist/http/internal/lib.d.ts +13 -0
  16. package/dist/http/internal/lib.d.ts.map +1 -0
  17. package/dist/http/internal/lib.js +13 -0
  18. package/dist/http.d.ts +1 -12
  19. package/dist/http.d.ts.map +1 -1
  20. package/dist/http.js +2 -13
  21. package/package.json +19 -20
  22. package/src/client/clientFor.ts +2 -2
  23. package/src/client/req.ts +5 -5
  24. package/src/http/Request.ts +41 -0
  25. package/src/http/internal/lib.ts +12 -0
  26. package/src/http.ts +1 -12
  27. package/tsconfig.src.json +0 -8
  28. package/vitest.config.ts.timestamp-1670862388823.mjs +23 -0
  29. package/_cjs/Request.cjs +0 -53
  30. package/_cjs/Request.cjs.map +0 -1
  31. package/dist/Request.d.ts +0 -36
  32. package/dist/Request.d.ts.map +0 -1
  33. package/dist/Request.js +0 -47
  34. package/src/Request.ts +0 -94
  35. package/vitest.config.ts.timestamp-1709838418683-4e8d39caec6be.mjs +0 -33
  36. package/vitest.config.ts.timestamp-1711656440837-b61cd88636759.mjs +0 -37
  37. package/vitest.config.ts.timestamp-1711724061890-f88ec51585e5c.mjs +0 -37
  38. package/vitest.config.ts.timestamp-1711743471020-0a3f182bca84f.mjs +0 -0
  39. package/vitest.config.ts.timestamp-1711743489536-f03d3db08b368.mjs +0 -37
  40. package/vitest.config.ts.timestamp-1711743593445-f537ce2bb2c6a.mjs +0 -0
package/CHANGELOG.md CHANGED
@@ -1,5 +1,23 @@
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
+
15
+ ## 1.23.1
16
+
17
+ ### Patch Changes
18
+
19
+ - 16bc3b2: fix typo
20
+
3
21
  ## 1.23.0
4
22
 
5
23
  ### Minor 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
- 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; }
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.Service, never, // SupportedErrors | FetchError | ResError,
13
- M> & RequestHandlersE<ApiConfig | HttpClient.HttpClient.Service, never, // SupportedErrors | FetchError | ResError,
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":"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"}
1
+ {"version":3,"file":"clientFor.d.ts","sourceRoot":"","sources":["../../src/client/clientFor.ts"],"names":[],"mappings":"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"}
@@ -3,8 +3,8 @@ import { S } from "../lib.js";
3
3
  * Middleware is inactivate by default, the Key is optional in route context, and the service is optionally provided as Effect Context.
4
4
  * Unless configured as `true`
5
5
  */
6
- export type RPCContetMap<Key, Service, E> = [Key, Service, E, true];
7
- export declare namespace RPCContetMap {
6
+ export type RPCContextMap<Key, Service, E> = [Key, Service, E, true];
7
+ export declare namespace RPCContextMap {
8
8
  type Custom<Key, Service, E, Custom> = [Key, Service, E, Custom];
9
9
  /**
10
10
  * Middleware is active by default, and provides the Service at Key in route context, and the Service is provided as Effect Context.
@@ -14,20 +14,20 @@ export declare namespace RPCContetMap {
14
14
  type Any = [string, any, S.Schema.All, any];
15
15
  }
16
16
  type Values<T extends Record<any, any>> = T[keyof T];
17
- export type GetEffectContext<CTXMap extends Record<string, RPCContetMap.Any>, T> = Values<{
17
+ export type GetEffectContext<CTXMap extends Record<string, RPCContextMap.Any>, T> = Values<{
18
18
  [key in keyof CTXMap as CTXMap[key][3] extends true ? never : key extends keyof T ? T[key] extends true ? never : CTXMap[key][0] : CTXMap[key][0]]: CTXMap[key][1];
19
19
  } & {
20
20
  [key in keyof CTXMap as CTXMap[key][3] extends false ? never : key extends keyof T ? T[key] extends true ? CTXMap[key][0] : never : never]: CTXMap[key][1];
21
21
  }>;
22
22
  export type ValuesOrNeverSchema<T extends Record<any, any>> = Values<T> extends never ? typeof S.Never : Values<T>;
23
- export type GetEffectError<CTXMap extends Record<string, RPCContetMap.Any>, T> = Values<{
23
+ export type GetEffectError<CTXMap extends Record<string, RPCContextMap.Any>, T> = Values<{
24
24
  [key in keyof CTXMap as CTXMap[key][3] extends true ? never : key extends keyof T ? T[key] extends true ? never : CTXMap[key][0] : CTXMap[key][0]]: CTXMap[key][2];
25
25
  } & {
26
26
  [key in keyof CTXMap as CTXMap[key][3] extends false ? never : key extends keyof T ? T[key] extends true ? CTXMap[key][0] : never : never]: CTXMap[key][2];
27
27
  }>;
28
28
  type JoinSchema<T> = T extends ReadonlyArray<S.Schema.All> ? S.Union<T> : typeof S.Never;
29
29
  type ExcludeFromTuple<T extends readonly any[], E> = T extends [infer F, ...infer R] ? [F] extends [E] ? ExcludeFromTuple<R, E> : [F, ...ExcludeFromTuple<R, E>] : [];
30
- export declare const makeRpcClient: <RequestConfig extends object, CTXMap extends Record<string, RPCContetMap.Any>, GeneralErrors extends S.Schema.All = never>(errors: { [K in keyof CTXMap]: CTXMap[K][2]; }, generalErrors?: GeneralErrors) => {
30
+ export declare const makeRpcClient: <RequestConfig extends object, CTXMap extends Record<string, RPCContextMap.Any>, GeneralErrors extends S.Schema.All = never>(errors: { [K in keyof CTXMap]: CTXMap[K][2]; }, generalErrors?: GeneralErrors) => {
31
31
  TaggedRequest: <Self>() => {
32
32
  <Tag extends string, Payload extends S.Struct.Fields, C extends {
33
33
  success: S.Schema.Any;
@@ -1 +1 @@
1
- {"version":3,"file":"req.d.ts","sourceRoot":"","sources":["../../src/client/req.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"req.d.ts","sourceRoot":"","sources":["../../src/client/req.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 * 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";
1
+ export * from "./http/internal/lib.js";
13
2
  //# sourceMappingURL=http.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../src/http.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"}
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 * 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,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.23.0",
3
+ "version": "1.24.0",
4
4
  "license": "MIT",
5
5
  "type": "module",
6
6
  "dependencies": {
7
- "@effect/rpc": "^0.41.1",
8
- "@effect/rpc-http": "^0.39.1",
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.0",
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/core": "1.12.0",
18
- "@effect-app/schema": "1.15.0"
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
- "ts-node": "^10.9.2",
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.67.1",
31
+ "@effect/platform": "^0.68.1",
33
32
  "effect": "^3.9.1",
34
- "@effect/schema": "^0.75.1"
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",
@@ -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.Service,
73
+ ApiConfig | HttpClient.HttpClient,
74
74
  never, // SupportedErrors | FetchError | ResError,
75
75
  M
76
76
  >
77
77
  & RequestHandlersE<
78
- ApiConfig | HttpClient.HttpClient.Service,
78
+ ApiConfig | HttpClient.HttpClient,
79
79
  never, // SupportedErrors | FetchError | ResError,
80
80
  M
81
81
  >
package/src/client/req.ts CHANGED
@@ -8,9 +8,9 @@ import { S } from "../lib.js"
8
8
  * Middleware is inactivate by default, the Key is optional in route context, and the service is optionally provided as Effect Context.
9
9
  * Unless configured as `true`
10
10
  */
11
- export type RPCContetMap<Key, Service, E> = [Key, Service, E, true]
11
+ export type RPCContextMap<Key, Service, E> = [Key, Service, E, true]
12
12
 
13
- export declare namespace RPCContetMap {
13
+ export declare namespace RPCContextMap {
14
14
  export type Custom<Key, Service, E, Custom> = [Key, Service, E, Custom]
15
15
 
16
16
  /**
@@ -24,7 +24,7 @@ export declare namespace RPCContetMap {
24
24
 
25
25
  type Values<T extends Record<any, any>> = T[keyof T]
26
26
 
27
- export type GetEffectContext<CTXMap extends Record<string, RPCContetMap.Any>, T> = Values<
27
+ export type GetEffectContext<CTXMap extends Record<string, RPCContextMap.Any>, T> = Values<
28
28
  // inverted
29
29
  & {
30
30
  [
@@ -45,7 +45,7 @@ export type GetEffectContext<CTXMap extends Record<string, RPCContetMap.Any>, T>
45
45
  }
46
46
  >
47
47
  export type ValuesOrNeverSchema<T extends Record<any, any>> = Values<T> extends never ? typeof S.Never : Values<T>
48
- export type GetEffectError<CTXMap extends Record<string, RPCContetMap.Any>, T> = Values<
48
+ export type GetEffectError<CTXMap extends Record<string, RPCContextMap.Any>, T> = Values<
49
49
  // inverted
50
50
  & {
51
51
  [
@@ -79,7 +79,7 @@ const merge = (a: any, b: Array<any>) =>
79
79
 
80
80
  export const makeRpcClient = <
81
81
  RequestConfig extends object,
82
- CTXMap extends Record<string, RPCContetMap.Any>,
82
+ CTXMap extends Record<string, RPCContextMap.Any>,
83
83
  GeneralErrors extends S.Schema.All = never
84
84
  >(
85
85
  errors: { [K in keyof CTXMap]: CTXMap[K][2] },
@@ -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 * 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"
1
+ export * from "./http/internal/lib.js"
package/tsconfig.src.json CHANGED
@@ -27,14 +27,6 @@
27
27
  "**/.*",
28
28
  "**/*.tmp"
29
29
  ],
30
- "ts-node": {
31
- "require": [
32
- "tsconfig-paths/register"
33
- ],
34
- "compilerOptions": {
35
- "module": "CommonJS"
36
- }
37
- },
38
30
  "references": [
39
31
  {
40
32
  "path": "../schema"
@@ -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
@@ -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
@@ -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==
@@ -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==