effect-app 2.33.1 → 2.35.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 CHANGED
@@ -1,5 +1,25 @@
1
1
  # @effect-app/prelude
2
2
 
3
+ ## 2.35.0
4
+
5
+ ### Minor Changes
6
+
7
+ - f38e31f: make LogLevels readonly
8
+
9
+ ### Patch Changes
10
+
11
+ - f30b57e: fix faker and rebuild dts
12
+
13
+ ## 2.34.0
14
+
15
+ ### Minor Changes
16
+
17
+ - 64d3a54: refactor: replace custom FiberRefs with Context.Reference in preparation of Effect v4
18
+
19
+ ### Patch Changes
20
+
21
+ - 771ac45: update packages
22
+
3
23
  ## 2.33.1
4
24
 
5
25
  ### Patch Changes
package/dist/faker.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import type { Faker } from "@faker-js/faker";
2
- import type * as FC from "fast-check";
2
+ import * as FC from "fast-check";
3
3
  export declare function setFaker(f: Faker): void;
4
4
  export declare function getFaker(): Faker;
5
5
  export declare const fakerToArb: <T>(fakerGen: () => T) => (fc: typeof FC) => FC.Arbitrary<T>;
@@ -1 +1 @@
1
- {"version":3,"file":"faker.d.ts","sourceRoot":"","sources":["../src/faker.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAA;AAC5C,OAAO,KAAK,KAAK,EAAE,MAAM,YAAY,CAAA;AAOrC,wBAAgB,QAAQ,CAAC,CAAC,EAAE,KAAK,QAEhC;AAED,wBAAgB,QAAQ,UAGvB;AAED,eAAO,MAAM,UAAU,GAAI,CAAC,EAAE,UAAU,MAAM,CAAC,MAAM,IAAI,OAAO,EAAE,oBASjE,CAAA;AAED,eAAO,MAAM,QAAQ,GAAI,CAAC,EACxB,KAAK,CAAC,IAAI,EAAE,KAAK,KAAK,MAAM,CAAC,KAC5B,CAAC,CAAC,EAAE,GAAG,KAAK,EAAE,CAAC,SAAS,CAAC,CAAC,CAAwC,CAAA"}
1
+ {"version":3,"file":"faker.d.ts","sourceRoot":"","sources":["../src/faker.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAA;AAC5C,OAAO,KAAK,EAAE,MAAM,YAAY,CAAA;AAOhC,wBAAgB,QAAQ,CAAC,CAAC,EAAE,KAAK,QAEhC;AAED,wBAAgB,QAAQ,UAGvB;AAED,eAAO,MAAM,UAAU,GAAI,CAAC,EAAE,UAAU,MAAM,CAAC,MAAM,IAAI,OAAO,EAAE,oBASjE,CAAA;AAED,eAAO,MAAM,QAAQ,GAAI,CAAC,EACxB,KAAK,CAAC,IAAI,EAAE,KAAK,KAAK,MAAM,CAAC,KAC5B,CAAC,CAAC,EAAE,GAAG,KAAK,EAAE,CAAC,SAAS,CAAC,CAAC,CAAwC,CAAA"}
package/dist/faker.js CHANGED
@@ -1,3 +1,4 @@
1
+ import * as FC from "fast-check";
1
2
  // TODO: inject faker differently, so we dont care about multiple instances of library.
2
3
  // eslint-disable-next-line prefer-const
3
4
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
@@ -11,14 +12,12 @@ export function getFaker() {
11
12
  return faker;
12
13
  }
13
14
  export const fakerToArb = (fakerGen) => (fc) => {
14
- return fc
15
+ return FC.noBias(FC.noShrink(fc
15
16
  .integer()
16
- .noBias() // same probability to generate each of the allowed integers
17
- .noShrink() // shrink on a seed makes no sense
18
17
  .map((seed) => {
19
18
  faker.seed(seed); // seed the generator
20
19
  return fakerGen(); // call it
21
- });
20
+ })));
22
21
  };
23
22
  export const fakerArb = (gen) => fakerToArb(() => gen(getFaker())());
24
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmFrZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvZmFrZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBSUEsdUZBQXVGO0FBRXZGLHdDQUF3QztBQUN4Qyw4REFBOEQ7QUFDOUQsSUFBSSxLQUFLLEdBQVUsU0FBeUIsQ0FBQTtBQUM1QyxNQUFNLFVBQVUsUUFBUSxDQUFDLENBQVE7SUFDL0IsS0FBSyxHQUFHLENBQUMsQ0FBQTtBQUNYLENBQUM7QUFFRCxNQUFNLFVBQVUsUUFBUTtJQUN0QixJQUFJLENBQUMsS0FBSztRQUFFLE1BQU0sSUFBSSxLQUFLLENBQUMsa0NBQWtDLENBQUMsQ0FBQTtJQUMvRCxPQUFPLEtBQUssQ0FBQTtBQUNkLENBQUM7QUFFRCxNQUFNLENBQUMsTUFBTSxVQUFVLEdBQUcsQ0FBSSxRQUFpQixFQUFFLEVBQUUsQ0FBQyxDQUFDLEVBQWEsRUFBRSxFQUFFO0lBQ3BFLE9BQU8sRUFBRTtTQUNOLE9BQU8sRUFBRTtTQUNULE1BQU0sRUFBRSxDQUFDLDREQUE0RDtTQUNyRSxRQUFRLEVBQUUsQ0FBQyxrQ0FBa0M7U0FDN0MsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUU7UUFDWixLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFBLENBQUMscUJBQXFCO1FBQ3RDLE9BQU8sUUFBUSxFQUFFLENBQUEsQ0FBQyxVQUFVO0lBQzlCLENBQUMsQ0FBQyxDQUFBO0FBQ04sQ0FBQyxDQUFBO0FBRUQsTUFBTSxDQUFDLE1BQU0sUUFBUSxHQUFHLENBQ3RCLEdBQTZCLEVBQ0EsRUFBRSxDQUFDLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxHQUFHLENBQUMsUUFBUSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUEifQ==
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmFrZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvZmFrZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxLQUFLLEVBQUUsTUFBTSxZQUFZLENBQUE7QUFFaEMsdUZBQXVGO0FBRXZGLHdDQUF3QztBQUN4Qyw4REFBOEQ7QUFDOUQsSUFBSSxLQUFLLEdBQVUsU0FBeUIsQ0FBQTtBQUM1QyxNQUFNLFVBQVUsUUFBUSxDQUFDLENBQVE7SUFDL0IsS0FBSyxHQUFHLENBQUMsQ0FBQTtBQUNYLENBQUM7QUFFRCxNQUFNLFVBQVUsUUFBUTtJQUN0QixJQUFJLENBQUMsS0FBSztRQUFFLE1BQU0sSUFBSSxLQUFLLENBQUMsa0NBQWtDLENBQUMsQ0FBQTtJQUMvRCxPQUFPLEtBQUssQ0FBQTtBQUNkLENBQUM7QUFFRCxNQUFNLENBQUMsTUFBTSxVQUFVLEdBQUcsQ0FBSSxRQUFpQixFQUFFLEVBQUUsQ0FBQyxDQUFDLEVBQWEsRUFBRSxFQUFFO0lBQ3BFLE9BQU8sRUFBRSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsUUFBUSxDQUMxQixFQUFFO1NBQ0MsT0FBTyxFQUFFO1NBQ1QsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUU7UUFDWixLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFBLENBQUMscUJBQXFCO1FBQ3RDLE9BQU8sUUFBUSxFQUFFLENBQUEsQ0FBQyxVQUFVO0lBQzlCLENBQUMsQ0FBQyxDQUNMLENBQUMsQ0FBQTtBQUNKLENBQUMsQ0FBQTtBQUVELE1BQU0sQ0FBQyxNQUFNLFFBQVEsR0FBRyxDQUN0QixHQUE2QixFQUNBLEVBQUUsQ0FBQyxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsR0FBRyxDQUFDLFFBQVEsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFBIn0=
@@ -5,5 +5,5 @@ export interface ResponseWithBody<A> extends Pick<HttpClientResponse, "headers"
5
5
  readonly body: A;
6
6
  }
7
7
  export declare const responseWithJsonBody: (response: HttpClientResponse) => Effect.Effect<ResponseWithBody<unknown>, HttpClientError.ResponseError, never>;
8
- export declare const demandJson: (client: HttpClient.HttpClient) => HttpClient.HttpClient.With<HttpClientError.HttpClientError, import("effect/Scope").Scope>;
8
+ export declare const demandJson: (client: HttpClient.HttpClient) => HttpClient.HttpClient.With<HttpClientError.HttpClientError, never>;
9
9
  //# sourceMappingURL=Request.d.ts.map
@@ -1 +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,oBAAoB,CAAA;AACnD,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,GAC/B,UAAU,kBAAkB,mFAOzB,CAAA;AAEL,eAAO,MAAM,UAAU,GAAI,QAAQ,UAAU,CAAC,UAAU,8FAmBlD,CAAA"}
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,oBAAoB,CAAA;AACnD,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,GAC/B,UAAU,kBAAkB,mFAOzB,CAAA;AAEL,eAAO,MAAM,UAAU,GAAI,QAAQ,UAAU,CAAC,UAAU,uEAmBlD,CAAA"}
@@ -1,7 +1,9 @@
1
1
  import type { LogLevel } from "effect";
2
- import { Effect, FiberRef } from "effect";
2
+ import { Context, Effect } from "effect";
3
3
  type Levels = "info" | "debug" | "warn" | "error";
4
- export declare const LogLevels: FiberRef.FiberRef<Map<string, Levels>>;
4
+ declare const LogLevels_base: Context.ReferenceClass<LogLevels, "LogLevels", ReadonlyMap<string, Levels>>;
5
+ export declare class LogLevels extends LogLevels_base {
6
+ }
5
7
  export declare const makeLog: (namespace: string, defaultLevel?: Levels) => {
6
8
  logWarning: (...message: ReadonlyArray<any>) => Effect.Effect<void, never, never>;
7
9
  logError: (...message: ReadonlyArray<any>) => Effect.Effect<void, never, never>;
@@ -1 +1 @@
1
- {"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../src/utils/logger.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAA;AACtC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAA;AAEzC,KAAK,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,GAAG,OAAO,CAAA;AACjD,eAAO,MAAM,SAAS,wCAAiD,CAAA;AACvE,eAAO,MAAM,OAAO,GAAI,WAAW,MAAM,EAAE,eAAc,MAAe;6BAI3C,aAAa,CAAC,GAAG,CAAC;2BAQpB,aAAa,CAAC,GAAG,CAAC;2BAClB,aAAa,CAAC,GAAG,CAAC;0BACnB,aAAa,CAAC,GAAG,CAAC;2BAMjB,aAAa,CAAC,GAAG,CAAC;0BAKnB,QAAQ,CAAC,QAAQ,cAAc,aAAa,CAAC,GAAG,CAAC;CAG1E,CAAA"}
1
+ {"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../src/utils/logger.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAA;AACtC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAExC,KAAK,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,GAAG,OAAO,CAAA;;AAEjD,qBAAa,SAAU,SAAQ,cAE7B;CAAG;AAEL,eAAO,MAAM,OAAO,GAAI,WAAW,MAAM,EAAE,eAAc,MAAe;6BAI3C,aAAa,CAAC,GAAG,CAAC;2BAQpB,aAAa,CAAC,GAAG,CAAC;2BAClB,aAAa,CAAC,GAAG,CAAC;0BACnB,aAAa,CAAC,GAAG,CAAC;2BAMjB,aAAa,CAAC,GAAG,CAAC;0BAKnB,QAAQ,CAAC,QAAQ,cAAc,aAAa,CAAC,GAAG,CAAC;CAG1E,CAAA"}
@@ -1,7 +1,10 @@
1
1
  /* eslint-disable @typescript-eslint/no-unsafe-argument */
2
2
  /* eslint-disable @typescript-eslint/no-explicit-any */
3
- import { Effect, FiberRef } from "effect";
4
- export const LogLevels = FiberRef.unsafeMake(new Map());
3
+ import { Context, Effect } from "effect";
4
+ export class LogLevels extends Context.Reference()("LogLevels", {
5
+ defaultValue: () => new Map()
6
+ }) {
7
+ }
5
8
  export const makeLog = (namespace, defaultLevel = "warn") => {
6
9
  const level = LogLevels.pipe(Effect.andThen((levels) => levels.get(namespace) ?? defaultLevel));
7
10
  const withLogNamespace = Effect.annotateLogs({ logNamespace: namespace });
@@ -17,4 +20,4 @@ export const makeLog = (namespace, defaultLevel = "warn") => {
17
20
  logWithLevel: (level, ...message) => Effect.logWithLevel(level, ...message).pipe(withLogNamespace)
18
21
  };
19
22
  };
20
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nZ2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3V0aWxzL2xvZ2dlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSwwREFBMEQ7QUFDMUQsdURBQXVEO0FBR3ZELE9BQU8sRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLE1BQU0sUUFBUSxDQUFBO0FBR3pDLE1BQU0sQ0FBQyxNQUFNLFNBQVMsR0FBRyxRQUFRLENBQUMsVUFBVSxDQUFDLElBQUksR0FBRyxFQUFrQixDQUFDLENBQUE7QUFDdkUsTUFBTSxDQUFDLE1BQU0sT0FBTyxHQUFHLENBQUMsU0FBaUIsRUFBRSxlQUF1QixNQUFNLEVBQUUsRUFBRTtJQUMxRSxNQUFNLEtBQUssR0FBRyxTQUFTLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLElBQUksWUFBWSxDQUFDLENBQUMsQ0FBQTtJQUMvRixNQUFNLGdCQUFnQixHQUFHLE1BQU0sQ0FBQyxZQUFZLENBQUMsRUFBRSxZQUFZLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQTtJQUN6RSxPQUFPO1FBQ0wsVUFBVSxFQUFFLENBQUMsR0FBRyxPQUEyQixFQUFFLEVBQUUsQ0FDN0MsS0FBSyxDQUFDLElBQUksQ0FDUixNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FDbkIsQ0FBQyxLQUFLLE1BQU0sSUFBSSxDQUFDLEtBQUssT0FBTyxJQUFJLENBQUMsS0FBSyxNQUFNO1lBQzNDLENBQUMsQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLEdBQUcsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDO1lBQ3RELENBQUMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUNoQixDQUNGO1FBQ0gsUUFBUSxFQUFFLENBQUMsR0FBRyxPQUEyQixFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLEdBQUcsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDO1FBQ2hHLFFBQVEsRUFBRSxDQUFDLEdBQUcsT0FBMkIsRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxHQUFHLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQztRQUNoRyxPQUFPLEVBQUUsQ0FBQyxHQUFHLE9BQTJCLEVBQUUsRUFBRSxDQUMxQyxLQUFLLENBQUMsSUFBSSxDQUNSLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUNuQixDQUFDLEtBQUssTUFBTSxJQUFJLENBQUMsS0FBSyxPQUFPLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsR0FBRyxPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLElBQUksQ0FDaEcsQ0FDRjtRQUNILFFBQVEsRUFBRSxDQUFDLEdBQUcsT0FBMkIsRUFBRSxFQUFFLENBQzNDLEtBQUssQ0FBQyxJQUFJLENBQ1IsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxLQUFLLE9BQU8sQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxHQUFHLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQ3hHO1FBQ0gscUJBQXFCO1FBQ3JCLFlBQVksRUFBRSxDQUFDLEtBQXdCLEVBQUUsR0FBRyxPQUEyQixFQUFFLEVBQUUsQ0FDekUsTUFBTSxDQUFDLFlBQVksQ0FBQyxLQUFLLEVBQUUsR0FBRyxPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUM7S0FDaEUsQ0FBQTtBQUNILENBQUMsQ0FBQSJ9
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nZ2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3V0aWxzL2xvZ2dlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSwwREFBMEQ7QUFDMUQsdURBQXVEO0FBR3ZELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sUUFBUSxDQUFBO0FBSXhDLE1BQU0sT0FBTyxTQUFVLFNBQVEsT0FBTyxDQUFDLFNBQVMsRUFBYSxDQUFDLFdBQVcsRUFBRTtJQUN6RSxZQUFZLEVBQUUsR0FBZ0MsRUFBRSxDQUFDLElBQUksR0FBRyxFQUFrQjtDQUMzRSxDQUFDO0NBQUc7QUFFTCxNQUFNLENBQUMsTUFBTSxPQUFPLEdBQUcsQ0FBQyxTQUFpQixFQUFFLGVBQXVCLE1BQU0sRUFBRSxFQUFFO0lBQzFFLE1BQU0sS0FBSyxHQUFHLFNBQVMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsSUFBSSxZQUFZLENBQUMsQ0FBQyxDQUFBO0lBQy9GLE1BQU0sZ0JBQWdCLEdBQUcsTUFBTSxDQUFDLFlBQVksQ0FBQyxFQUFFLFlBQVksRUFBRSxTQUFTLEVBQUUsQ0FBQyxDQUFBO0lBQ3pFLE9BQU87UUFDTCxVQUFVLEVBQUUsQ0FBQyxHQUFHLE9BQTJCLEVBQUUsRUFBRSxDQUM3QyxLQUFLLENBQUMsSUFBSSxDQUNSLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUNuQixDQUFDLEtBQUssTUFBTSxJQUFJLENBQUMsS0FBSyxPQUFPLElBQUksQ0FBQyxLQUFLLE1BQU07WUFDM0MsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsR0FBRyxPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUM7WUFDdEQsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQ2hCLENBQ0Y7UUFDSCxRQUFRLEVBQUUsQ0FBQyxHQUFHLE9BQTJCLEVBQUUsRUFBRSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsR0FBRyxPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUM7UUFDaEcsUUFBUSxFQUFFLENBQUMsR0FBRyxPQUEyQixFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLEdBQUcsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDO1FBQ2hHLE9BQU8sRUFBRSxDQUFDLEdBQUcsT0FBMkIsRUFBRSxFQUFFLENBQzFDLEtBQUssQ0FBQyxJQUFJLENBQ1IsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQ25CLENBQUMsS0FBSyxNQUFNLElBQUksQ0FBQyxLQUFLLE9BQU8sQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxHQUFHLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUNoRyxDQUNGO1FBQ0gsUUFBUSxFQUFFLENBQUMsR0FBRyxPQUEyQixFQUFFLEVBQUUsQ0FDM0MsS0FBSyxDQUFDLElBQUksQ0FDUixNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEtBQUssT0FBTyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLEdBQUcsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FDeEc7UUFDSCxxQkFBcUI7UUFDckIsWUFBWSxFQUFFLENBQUMsS0FBd0IsRUFBRSxHQUFHLE9BQTJCLEVBQUUsRUFBRSxDQUN6RSxNQUFNLENBQUMsWUFBWSxDQUFDLEtBQUssRUFBRSxHQUFHLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQztLQUNoRSxDQUFBO0FBQ0gsQ0FBQyxDQUFBIn0=
package/package.json CHANGED
@@ -1,11 +1,11 @@
1
1
  {
2
2
  "name": "effect-app",
3
- "version": "2.33.1",
3
+ "version": "2.35.0",
4
4
  "license": "MIT",
5
5
  "type": "module",
6
6
  "dependencies": {
7
- "@effect/rpc": "^0.53.1",
8
- "@effect/rpc-http": "^0.51.1",
7
+ "@effect/rpc": "^0.54.1",
8
+ "@effect/rpc-http": "^0.52.1",
9
9
  "@tsconfig/strictest": "^2.0.5",
10
10
  "date-fns": "^4.1.0",
11
11
  "nanoid": "^5.1.3",
@@ -27,13 +27,13 @@
27
27
  "@types/node": "~22.13.10",
28
28
  "@types/uuid": "^10.0.0",
29
29
  "@types/validator": "^13.12.2",
30
- "fast-check": "~3.23.2",
30
+ "fast-check": "~4.0.0",
31
31
  "typescript": "^5.8.2",
32
32
  "vitest": "^3.0.8"
33
33
  },
34
34
  "peerDependencies": {
35
- "@effect/platform": "^0.78.1",
36
- "effect": "^3.13.8"
35
+ "@effect/platform": "^0.79.1",
36
+ "effect": "^3.13.10"
37
37
  },
38
38
  "typesVersions": {
39
39
  "*": {
package/src/faker.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  // FILE HAS SIDE EFFECTS!
2
2
  import type { Faker } from "@faker-js/faker"
3
- import type * as FC from "fast-check"
3
+ import * as FC from "fast-check"
4
4
 
5
5
  // TODO: inject faker differently, so we dont care about multiple instances of library.
6
6
 
@@ -17,14 +17,14 @@ export function getFaker() {
17
17
  }
18
18
 
19
19
  export const fakerToArb = <T>(fakerGen: () => T) => (fc: typeof FC) => {
20
- return fc
21
- .integer()
22
- .noBias() // same probability to generate each of the allowed integers
23
- .noShrink() // shrink on a seed makes no sense
24
- .map((seed) => {
25
- faker.seed(seed) // seed the generator
26
- return fakerGen() // call it
27
- })
20
+ return FC.noBias(FC.noShrink(
21
+ fc
22
+ .integer()
23
+ .map((seed) => {
24
+ faker.seed(seed) // seed the generator
25
+ return fakerGen() // call it
26
+ })
27
+ ))
28
28
  }
29
29
 
30
30
  export const fakerArb = <T>(
@@ -2,10 +2,14 @@
2
2
  /* eslint-disable @typescript-eslint/no-explicit-any */
3
3
 
4
4
  import type { LogLevel } from "effect"
5
- import { Effect, FiberRef } from "effect"
5
+ import { Context, Effect } from "effect"
6
6
 
7
7
  type Levels = "info" | "debug" | "warn" | "error"
8
- export const LogLevels = FiberRef.unsafeMake(new Map<string, Levels>())
8
+
9
+ export class LogLevels extends Context.Reference<LogLevels>()("LogLevels", {
10
+ defaultValue: (): ReadonlyMap<string, Levels> => new Map<string, Levels>()
11
+ }) {}
12
+
9
13
  export const makeLog = (namespace: string, defaultLevel: Levels = "warn") => {
10
14
  const level = LogLevels.pipe(Effect.andThen((levels) => levels.get(namespace) ?? defaultLevel))
11
15
  const withLogNamespace = Effect.annotateLogs({ logNamespace: namespace })