effect-app 4.0.0-beta.62 → 4.0.0-beta.64

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,13 @@
1
1
  # @effect-app/prelude
2
2
 
3
+ ## 4.0.0-beta.64
4
+
5
+ ### Patch Changes
6
+
7
+ - c1a6fdc: fix proxify
8
+
9
+ ## 4.0.0-beta.63
10
+
3
11
  ## 4.0.0-beta.62
4
12
 
5
13
  ### Patch Changes
package/dist/Context.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { type Effect, Layer, type Scope, type Types } from "effect";
1
+ import { Effect, Layer, type Scope, type Types } from "effect";
2
2
  import * as SM from "effect/ServiceMap";
3
3
  import { type Yieldable } from "./Effect.js";
4
4
  export * from "effect/ServiceMap";
@@ -1 +1 @@
1
- {"version":3,"file":"Context.d.ts","sourceRoot":"","sources":["../src/Context.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Context.d.ts","sourceRoot":"","sources":["../src/Context.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,KAAK,EAAE,KAAK,KAAK,EAAE,MAAM,QAAQ,CAAA;AAC9D,OAAO,KAAK,EAAE,MAAM,mBAAmB,CAAA;AACvC,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,aAAa,CAAA;AAE5C,cAAc,mBAAmB,CAAA;AAEjC,OAAO,EAAE,KAAK,UAAU,IAAI,OAAO,EAAE,MAAM,mBAAmB,CAAA;AAC9D,OAAO,EAAE,YAAY,IAAI,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAE7D,MAAM,WAAW,MAAM,CAAC,IAAI,SAAS,MAAM,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,SAAS,MAAM,CACtE,SAAQ,EAAE,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,SAAS,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC;IAE7E,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,GAAG,IAAI,CAAA;IACjC,UAAU,CAAC,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;IAE5C,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,EACZ,GAAG,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC,KAC5B,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAA;IAClD,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,OAAO,EAAE,KAAK,KAAK,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,CAAA;IAC1F,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,OAAO,EAAE,KAAK,KAAK,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,CAAA;CACpE;AAiBD,wBAAgB,SAAS,CAAC,UAAU,SAAS,MAAM,EAAE,KAAK,SAAS,MAAM,GAAG,UAAU,EACpF,GAAG,EAAE,MAAM,EACX,aAAa,CAAC,EAAE,KAAK,IAEb,CAAC,SAAS,MAAM,EAAE,KAAK,CAAC,KAAG,CAAC,GAAG,MAAM,CAAC,UAAU,EAAE,KAAK,CAAC,CAsBjE;AAED,MAAM,MAAM,mBAAmB,CAAC,IAAI,EAAE,IAAI,IAAI,IAAI,SAAS,MAAM,CAAC,WAAW,EAAE,GAAG,CAAC,GAAG;KAEhF,CAAC,IAAI,MAAM,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,MAAM,IAAI,CAAC,KAAK,MAAM,GAAG,CAAC,GACxE,CAAC,CAAC,GAAG,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,SAAS,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,GAC9D,CAAC,GACJ,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,MAAM,IAAI,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC,GACrF,CAAC,GAAG,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,GAAG,CAAC,CAAC,GAC1D,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,MAAM,IAAI,CAAC,KAAK,MAAM,CAAC,GACnD,CAAC,GAAG,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,GAC5D,IAAI,CAAC,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,GAAG,CAAC,CAAC,GACxF,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC;CACxC,GACC,EAAE,CAAA;AAEN;;GAEG;AACH,eAAO,MAAM,OAAO,GAAI,CAAC,SAAS,MAAM,EAAE,KAAK,CAAC,MAC/C,IAAI,EAAE,KAAK,OACR,CAAC,GACD,mBAAmB,CAAC,IAAI,EAAE,KAAK,CA0ClC,CAAA;AAED,eAAO,MAAM,MAAM,uBAAuB,CAAA;AAc1C,MAAM,WAAW,WAAW,CAAC,IAAI,SAAS,MAAM,EAAE,EAAE,CAAC,GAAG,CAAC,UAAU,SAAS,MAAM,EAAE,KAAK,SAAS,MAAM,CACtG,SAAQ,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC;IAE3B,KAAI,CAAC,EAAE,KAAK,GAAG,KAAK,GAAG;QAAE,QAAQ,CAAC,CAAC,MAAM,CAAC,EAAE,UAAU,CAAA;KAAE,CAAA;IACxD,QAAQ,CAAC,GAAG,EAAE,UAAU,CAAA;CACzB;AASD,eAAO,MAAM,MAAM,EAAE;IACnB,CAAC,IAAI,SAAS,MAAM,EAAE,KAAK,SAAS,MAAM,KAAK,CAC7C,KAAK,CAAC,UAAU,SAAS,MAAM,EAC/B,CAAC,EACD,CAAC,GAAG,KAAK,CAAC,UAAU,EACpB,IAAI,SAAS,aAAa,CAAC,GAAG,CAAC,GAAG,KAAK,EAEvC,EAAE,EAAE,UAAU,EACd,OAAO,CAAC,EAAE;QACR,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,IAAI,KAAK,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC,GAAG,SAAS,CAAA;KACxG,KAEC,WAAW,CAAC,IAAI,EAAE,UAAU,EAAE,KAAK,CAAC,GACpC,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,OAAO,GACvC;QACA,QAAQ,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC,GAC9D,CAAC,GAAG,IAAI,EAAE,IAAI,KAAK,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;KAClD,CAAC,CAAA;IACN,CAAC,IAAI,SAAS,MAAM,KAAK,CACvB,KAAK,CAAC,UAAU,SAAS,MAAM,EAC/B,IAAI,SAAS,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,EAAE,GAAG,KAAK,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,EAE5F,EAAE,EAAE,UAAU,EACd,OAAO,EAAE;QACP,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAA;KACpB,KAEC,WAAW,CACX,IAAI,EACJ,UAAU,EACV,IAAI,SACA,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,CAAC,GAC3C,CAAC,CAAC,GAAG,IAAI,EAAE,MAAM,KAAK,KAAK,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC,GAAG,EAAE,GAC5E,KAAK,CACV,GACC;QAAE,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAA;KAAE,CAAA;CAQ5B,CAAA"}
package/dist/Context.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /* eslint-disable @typescript-eslint/no-explicit-any */
2
- import { Layer } from "effect";
2
+ import { Effect, Layer } from "effect";
3
3
  import * as SM from "effect/ServiceMap";
4
4
  export * from "effect/ServiceMap";
5
5
  export { isServiceMap as isContext } from "effect/ServiceMap";
@@ -52,14 +52,30 @@ export const proxify = (Tag) => () => {
52
52
  // @ts-expect-error abc
53
53
  return (body) => Tag.use(body);
54
54
  }
55
+ if (prop === "useSync") {
56
+ // @ts-expect-error abc
57
+ return (body) => Tag.useSync(body);
58
+ }
55
59
  if (prop in Tag) {
56
60
  return Tag[prop];
57
61
  }
58
62
  if (cache.has(prop)) {
59
63
  return cache.get(prop);
60
64
  }
61
- const fn = (...args) => Tag.use((s) => s[prop](...args));
62
- const cn = Tag.use((s) => s[prop]);
65
+ const fn = (...args) => Tag.use((s) => {
66
+ const f = s[prop](...args);
67
+ if (Effect.isEffect(f)) {
68
+ return f;
69
+ }
70
+ return Effect.succeed(f);
71
+ });
72
+ const cn = Tag.use((s) => {
73
+ const f = s[prop];
74
+ if (Effect.isEffect(f)) {
75
+ return f;
76
+ }
77
+ return Effect.succeed(f);
78
+ });
63
79
  // @effect-diagnostics effect/floatingEffect:off
64
80
  Object.assign(fn, cn);
65
81
  Object.setPrototypeOf(fn, Object.getPrototypeOf(cn));
@@ -84,4 +100,4 @@ export const Opaque = () => (id, options) => {
84
100
  }
85
101
  });
86
102
  };
87
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ29udGV4dC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9Db250ZXh0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHVEQUF1RDtBQUV2RCxPQUFPLEVBQWUsS0FBSyxFQUEwQixNQUFNLFFBQVEsQ0FBQTtBQUNuRSxPQUFPLEtBQUssRUFBRSxNQUFNLG1CQUFtQixDQUFBO0FBR3ZDLGNBQWMsbUJBQW1CLENBQUE7QUFHakMsT0FBTyxFQUFFLFlBQVksSUFBSSxTQUFTLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQTtBQWU3RCxzRkFBc0Y7QUFDdEYsbUNBQW1DO0FBQ25DLElBQUk7QUFDSixpRkFBaUY7QUFDakYsMEJBQTBCO0FBQzFCLGtEQUFrRDtBQUNsRCw2REFBNkQ7QUFDN0QsZUFBZTtBQUNmLGNBQWM7QUFDZCx3Q0FBd0M7QUFDeEMsdURBQXVEO0FBQ3ZELHdEQUF3RDtBQUN4RCxNQUFNO0FBQ04sSUFBSTtBQUVKLE1BQU0sVUFBVSxTQUFTLENBQ3ZCLEdBQVcsRUFDWCxhQUFxQjtJQUVyQixPQUFPLENBQW1CLEdBQU0sRUFBaUMsRUFBRTtRQUNqRSxNQUFNLEdBQUcsR0FBRyxFQUFFLENBQUMsT0FBTyxDQUFvQixHQUFHLENBQUMsQ0FBQTtRQUM5QyxJQUFJLE1BQU0sR0FBRyxHQUFHLENBQUE7UUFDaEIsSUFBSSxPQUFPLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO1lBQ3pDLE1BQU0sRUFBRSxHQUFHLEVBQUUsR0FBRyxJQUFJLEVBQUUsR0FBRyxHQUFHLENBQUE7WUFDNUIsTUFBTSxHQUFHLElBQVcsQ0FBQTtRQUN0QixDQUFDO1FBQ0QsTUFBTSxDQUFDLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxHQUFHLEVBQUUsTUFBTSxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsRUFBRSxNQUFNLENBQUMsQ0FBQTtRQUNoRSxJQUFJLENBQUMsYUFBYSxFQUFFLENB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
103
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ29udGV4dC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9Db250ZXh0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHVEQUF1RDtBQUV2RCxPQUFPLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBMEIsTUFBTSxRQUFRLENBQUE7QUFDOUQsT0FBTyxLQUFLLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQTtBQUd2QyxjQUFjLG1CQUFtQixDQUFBO0FBR2pDLE9BQU8sRUFBRSxZQUFZLElBQUksU0FBUyxFQUFFLE1BQU0sbUJBQW1CLENBQUE7QUFlN0Qsc0ZBQXNGO0FBQ3RGLG1DQUFtQztBQUNuQyxJQUFJO0FBQ0osaUZBQWlGO0FBQ2pGLDBCQUEwQjtBQUMxQixrREFBa0Q7QUFDbEQsNkRBQTZEO0FBQzdELGVBQWU7QUFDZixjQUFjO0FBQ2Qsd0NBQXdDO0FBQ3hDLHVEQUF1RDtBQUN2RCx3REFBd0Q7QUFDeEQsTUFBTTtBQUNOLElBQUk7QUFFSixNQUFNLFVBQVUsU0FBUyxDQUN2QixHQUFXLEVBQ1gsYUFBcUI7SUFFckIsT0FBTyxDQUFtQixHQUFNLEVBQWlDLEVBQUU7UUFDakUsTUFBTSxHQUFHLEdBQUcsRUFBRSxDQUFDLE9BQU8sQ0FBb0IsR0FBRyxDQUFDLENBQUE7UUFDOUMsSUFBSSxNQUFNLEdBQUcsR0FBRyxDQUFBO1FBQ2hCLElBQUksT0FBTyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztZQUN6QyxNQUFNLEVBQUUsR0FBRyxFQUFFLEdBQUcsSUFBSSxFQUFFLEdBQUcsR0FBRyxDQUFBO1lBQzVCLE1BQU0sR0FBRyxJQUFXLENBQUE7UUFDdEIsQ0FBQztRQUNELE1BQU0sQ0FBQyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsR0FBRyxFQUFFLE1BQU0sQ0FBQyxjQUFjLENBQUMsR0FBRyxDQUFDLEVBQUUsTUFBTSxDQUFDLENBQUE7UUFDaEUsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1lBQ25CLE1BQU0sS0FBSyxHQUFHLEtBQUssQ0FBQyxlQUFlLENBQUE7WUFDbkMsS0FBSyxDQUFDLGVBQWUsR0FBRyxDQUFDLENBQUE7WUFDekIsYUFBYSxHQUFHLElBQUksS0FBSyxFQUFFLENBQUE7WUFDM0IsS0FBSyxDQUFDLGVBQWUsR0FBRyxLQUFLLENBQUE7UUFDL0IsQ0FBQztRQUNELHlHQUF5RztRQUN6RyxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUMsRUFBRSxPQUFPLEVBQUU7WUFDaEMsR0FBRztnQkFDRCxPQUFPLGFBQWMsQ0FBQyxLQUFLLENBQUE7WUFDN0IsQ0FBQztTQUNGLENBQUMsQ0FBQTtRQUNGLE9BQU8sQ0FBQyxDQUFBO0lBQ1YsQ0FBQyxDQUFBO0FBQ0gsQ0FBQztBQWdCRDs7R0FFRztBQUNILE1BQU0sQ0FBQyxNQUFNLE9BQU8sR0FBRyxDQUFtQixHQUFNLEVBQUUsRUFBRSxDQUNwRCxHQUVxQyxFQUFFO0lBRXJDLE1BQU0sS0FBSyxHQUFHLElBQUksR0FBRyxFQUFFLENBQUE7SUFDdkIsTUFBTSxJQUFJLEdBQUcsSUFBSSxLQUFLLENBQUMsR0FBRyxFQUFFO1FBQzFCLEdBQUcsQ0FBQyxPQUFZLEVBQUUsSUFBUyxFQUFFLFNBQVM7WUFDcEMsSUFBSSxJQUFJLEtBQUssS0FBSyxFQUFFLENBQUM7Z0JBQ25CLHVCQUF1QjtnQkFDdkIsT0FBTyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUUsR0FBVyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQTtZQUN6QyxDQUFDO1lBQ0QsSUFBSSxJQUFJLEtBQUssU0FBUyxFQUFFLENBQUM7Z0JBQ3ZCLHVCQUF1QjtnQkFDdkIsT0FBTyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUUsR0FBVyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQTtZQUM3QyxDQUFDO1lBQ0QsSUFBSSxJQUFJLElBQUksR0FBRyxFQUFFLENBQUM7Z0JBQ2hCLE9BQVEsR0FBVyxDQUFDLElBQUksQ0FBQyxDQUFBO1lBQzNCLENBQUM7WUFDRCxJQUFJLEtBQUssQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztnQkFDcEIsT0FBTyxLQUFLLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFBO1lBQ3hCLENBQUM7WUFDRCxNQUFNLEVBQUUsR0FBRyxDQUFDLEdBQUcsSUFBZ0IsRUFBRSxFQUFFLENBQ2hDLEdBQVcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFNLEVBQUUsRUFBRTtnQkFDMUIsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUE7Z0JBQzFCLElBQUksTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO29CQUN2QixPQUFPLENBQUMsQ0FBQTtnQkFDVixDQUFDO2dCQUNELE9BQU8sTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQTtZQUMxQixDQUFDLENBQUMsQ0FBQTtZQUNKLE1BQU0sRUFBRSxHQUFJLEdBQVcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFNLEVBQUUsRUFBRTtnQkFDckMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFBO2dCQUNqQixJQUFJLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztvQkFDdkIsT0FBTyxDQUFDLENBQUE7Z0JBQ1YsQ0FBQztnQkFDRCxPQUFPLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUE7WUFDMUIsQ0FBQyxDQUFDLENBQUE7WUFDRixnREFBZ0Q7WUFDaEQsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUE7WUFDckIsTUFBTSxDQUFDLGNBQWMsQ0FBQyxFQUFFLEVBQUUsTUFBTSxDQUFDLGNBQWMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFBO1lBQ3BELEtBQUssQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFBO1lBQ25CLE9BQU8sRUFBRSxDQUFBO1FBQ1gsQ0FBQztLQUNGLENBQUMsQ0FBQTtJQUNGLE9BQU8sSUFBSSxDQUFBO0FBQ2IsQ0FBQyxDQUFBO0FBRUQsTUFBTSxDQUFDLE1BQU0sTUFBTSxHQUFHLG9CQUFvQixDQUFBO0FBcUIxQyxzSEFBc0g7QUFDdEgsMENBQTBDO0FBQzFDLElBQUk7QUFDSiw2REFBNkQ7QUFDN0QsNkJBQTZCO0FBQzdCLElBQUk7QUFFSixNQUFNLENBQUMsTUFBTSxNQUFNLEdBb0NmLEdBQUcsRUFBRSxDQUFDLENBQUMsRUFBVSxFQUFFLE9BQVksRUFBRSxFQUFFO0lBQ3JDLE1BQU0sR0FBRyxHQUFHLEVBQUUsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxFQUFFLEVBQUUsT0FBTyxDQUFRLENBQUE7SUFDNUMsT0FBTyxNQUFNLENBQUMsTUFBTSxDQUFDLEdBQUcsRUFBRTtRQUN4QixPQUFPLEVBQUUsQ0FBQyxHQUFpQyxFQUFFLEVBQUU7WUFDN0MsT0FBTyxLQUFLLENBQUMsTUFBTSxDQUFDLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQTtRQUMvQixDQUFDO0tBQ0YsQ0FBQyxDQUFBO0FBQ0osQ0FBQyxDQUFBIn0=
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "effect-app",
3
- "version": "4.0.0-beta.62",
3
+ "version": "4.0.0-beta.64",
4
4
  "license": "MIT",
5
5
  "type": "module",
6
6
  "dependencies": {
package/src/Context.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  /* eslint-disable @typescript-eslint/no-explicit-any */
2
2
 
3
- import { type Effect, Layer, type Scope, type Types } from "effect"
3
+ import { Effect, Layer, type Scope, type Types } from "effect"
4
4
  import * as SM from "effect/ServiceMap"
5
5
  import { type Yieldable } from "./Effect.js"
6
6
 
@@ -94,14 +94,31 @@ export const proxify = <T extends object>(Tag: T) =>
94
94
  // @ts-expect-error abc
95
95
  return (body) => (Tag as any).use(body)
96
96
  }
97
+ if (prop === "useSync") {
98
+ // @ts-expect-error abc
99
+ return (body) => (Tag as any).useSync(body)
100
+ }
97
101
  if (prop in Tag) {
98
102
  return (Tag as any)[prop]
99
103
  }
100
104
  if (cache.has(prop)) {
101
105
  return cache.get(prop)
102
106
  }
103
- const fn = (...args: Array<any>) => (Tag as any).use((s: any) => s[prop](...args))
104
- const cn = (Tag as any).use((s: any) => s[prop])
107
+ const fn = (...args: Array<any>) =>
108
+ (Tag as any).use((s: any) => {
109
+ const f = s[prop](...args)
110
+ if (Effect.isEffect(f)) {
111
+ return f
112
+ }
113
+ return Effect.succeed(f)
114
+ })
115
+ const cn = (Tag as any).use((s: any) => {
116
+ const f = s[prop]
117
+ if (Effect.isEffect(f)) {
118
+ return f
119
+ }
120
+ return Effect.succeed(f)
121
+ })
105
122
  // @effect-diagnostics effect/floatingEffect:off
106
123
  Object.assign(fn, cn)
107
124
  Object.setPrototypeOf(fn, Object.getPrototypeOf(cn))