effect-query 0.1.1 → 0.1.2-beta.1

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/dist/index.cjs CHANGED
@@ -221,7 +221,10 @@ var EffectQueryRunner = class {
221
221
  //#endregion
222
222
  //#region src/index.ts
223
223
  function createEffectQuery(layer) {
224
- const runner = new EffectQueryRunner(effect.ManagedRuntime.make(layer));
224
+ return createEffectQueryFromManagedRuntime(effect.ManagedRuntime.make(layer));
225
+ }
226
+ function createEffectQueryFromManagedRuntime(runtime) {
227
+ const runner = new EffectQueryRunner(runtime);
225
228
  return {
226
229
  queryOptions: (options) => effectQueryQueryOptions({
227
230
  queryKey: options.queryKey,
@@ -233,4 +236,5 @@ function createEffectQuery(layer) {
233
236
  }
234
237
 
235
238
  //#endregion
236
- exports.createEffectQuery = createEffectQuery;
239
+ exports.createEffectQuery = createEffectQuery;
240
+ exports.createEffectQueryFromManagedRuntime = createEffectQueryFromManagedRuntime;
package/dist/index.d.cts CHANGED
@@ -1,4 +1,4 @@
1
- import { Cause, Effect, Layer } from "effect";
1
+ import { Cause, Effect, Layer, ManagedRuntime } from "effect";
2
2
  import * as _tanstack_react_query0 from "@tanstack/react-query";
3
3
  import { DefinedInitialDataInfiniteOptions, DefinedInitialDataOptions, InfiniteData, QueryFunctionContext, UndefinedInitialDataInfiniteOptions, UndefinedInitialDataOptions, UnusedSkipTokenInfiniteOptions, UnusedSkipTokenOptions, UseMutationOptions, skipToken } from "@tanstack/react-query";
4
4
 
@@ -74,6 +74,17 @@ declare function createEffectQuery<Input>(layer: Layer.Layer<Input, never, never
74
74
  _tag: string;
75
75
  }, TFnRequirements, TVariables>(options: EffectQueryMutationOptionsInput<TFnResult, TFnErrorResult, TFnRequirements, TVariables>) => _tanstack_react_query0.UseMutationOptions<TFnResult, [TFnErrorResult] extends [never] ? never : EffectQueryDefect<unknown> | EffectQueryFailure<TFnErrorResult>, TVariables, unknown>;
76
76
  };
77
+ declare function createEffectQueryFromManagedRuntime<Input>(runtime: ManagedRuntime.ManagedRuntime<Input, never>): {
78
+ queryOptions: <TFnResult, TFnErrorResult extends {
79
+ _tag: string;
80
+ }, TFnRequirements>(options: EffectQueryOptionsInput<TFnResult, TFnErrorResult, TFnRequirements>) => _tanstack_react_query0.UseQueryOptions<TFnResult, [TFnErrorResult] extends [never] ? EffectQueryDefect<unknown> : EffectQueryDefect<unknown> | EffectQueryFailure<TFnErrorResult>, TFnResult, EffectQueryQueryKey>;
81
+ infiniteQueryOptions: <TFnResult, TFnErrorResult extends {
82
+ _tag: string;
83
+ }, TFnRequirements>(options: EffectInfiniteQueryOptionsInput<TFnResult, TFnErrorResult, TFnRequirements>) => _tanstack_react_query0.UseInfiniteQueryOptions<TFnResult, [TFnErrorResult] extends [never] ? EffectQueryDefect<unknown> : EffectQueryDefect<unknown> | EffectQueryFailure<TFnErrorResult>, TFnResult, EffectQueryQueryKey, unknown>;
84
+ mutationOptions: <TFnResult, TFnErrorResult extends {
85
+ _tag: string;
86
+ }, TFnRequirements, TVariables>(options: EffectQueryMutationOptionsInput<TFnResult, TFnErrorResult, TFnRequirements, TVariables>) => _tanstack_react_query0.UseMutationOptions<TFnResult, [TFnErrorResult] extends [never] ? never : EffectQueryDefect<unknown> | EffectQueryFailure<TFnErrorResult>, TVariables, unknown>;
87
+ };
77
88
  //#endregion
78
- export { createEffectQuery };
89
+ export { createEffectQuery, createEffectQueryFromManagedRuntime };
79
90
  //# sourceMappingURL=index.d.cts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.cts","names":[],"sources":["../src/errors.ts","../src/types.ts","../src/infiniteQueryOptions.ts","../src/mutationOptions.ts","../src/queryOptions.ts","../src/index.ts"],"sourcesContent":[],"mappings":";;;;;cAEM;cACA;KAED;;AAL0B,CAAA,GAEzB,KAAA,GAAA,KAAA,EAAA,YAAqD,OAAA,CAAA,GAAA;EACrD,MAAA,EAAA,CAAA,KAAA,EAMY,KAAA,CAAM,KANiC,CAAA,OAAA,CAAA,EAAA,GAMd,SANc;AAAA,CAAA,GAEpD,CAAA,CAKC,QALD,CAAA,SAAA,CAAA,KAAuB,CAAA,GAMxB,MANwB,CAAA,KAAA,EAAA,KAAA,CAAA,GAOxB,QAPwB,SAAA;EAIV,IAAM,EAAA,MAAA;CAAmB,GAAA,QAK7B,QAJR,CAAA,MAAA,CAAA,IAAA,CAAA,OAAA,EAKa,OALb,CAKqB,QALrB,EAAA;EACF,IAAA,EAIyC,CAJzC;AACA,CAAA,CAAA,EAAA,GAIS,SAJT,EAEU,GAIR,MAJQ,CAAA,KAAA,EAAA,KAAA,CAAA,CAAA;AACa,cAKd,kBALc,CAAA,iBAAA;EAAkB,IAAA,EAAA,MAAA;CAA1B,GAAA,KAAA,GAAA,KAAA,CAAA,SAOT,KAAA,CAPS;EACN,SAAA,IAAA,EAAA,OAOW,qBAPX;EAEP,SAAA,OAAA,EAMc,QANd;EAAM,SAAA,YAAA,EAOa,KAAA,CAAM,KAPnB,CAOyB,QAPzB,CAAA;EAEC,WAAA,CAAA,OAAA,EAAkB,MAAA,EAAA,OAAA,EAQlB,QARkB,EAAA,KAAA,EASpB,KAAA,CAAM,KATc,CASR,QATQ,CAAA;EAGP,KAAA,CAAA,OAAA,CAAA,CAAA,OAAA,EAeX,uBAfW,CAgBlB,QAhBkB,SAAA;IACJ,IAAA,EAAA,MAAA;EACiB,CAAA,GAcK,QAdL,GAAA,KAAA,EAe/B,OAf+B,CAAA,CAAA,EAiBhC,OAjBgC;;AAGxB,cA+BA,iBA/BA,CAAA,OAAA,CAAA,SA+BmC,KAAA,CA/BnC;EACU,SAAA,IAAA,EAAA,OA+BC,oBA/BD;EAAZ,SAAM,WAAA,EAgCO,KAAA,CAAM,KAhCb,CAgCmB,OAhCnB,CAAA;EAUX,WAAA,CAAA,OAAA,EAAA,MAAA,EAAA,MAAA,EAuBiC,OAvBjC;EAAoC,KAAA,CAAA,OAAA,CAAA,CAAA,OAAA,EA8B7B,uBA9B6B,CAAA,KAAA,EA8BE,OA9BF,CAAA,GA8Ba,MA9Bb,CAAA,MAAA,EAAA,OAAA,CAAA,CAAA,EA+BrC,OA/BqC;;;;KCvC9B,mBAAA,6BAGV;;;ADDyD,KEctD,0BFboD,CAAA,WAAA,EAAA,gBAAA,EAAA,iBAAA,EAAA,kBEiBrC,mBFjBqC,GEiBf,mBFjBe,EAAA,aAAA,KAAA,CAAA,GAAA,CAAA,OAAA,EEoB9C,oBFpB8C,CEoBzB,SFpByB,EEoBd,UFpBc,CAAA,EAAA,GEqBpD,MAAA,CAAO,MFrB6C,CEqBtC,WFrBsC,EEqB3B,gBFrB2B,EEqBX,iBFrBW,CAAA;AAAA,KEuBpD,8CFrBuB,CAAA,YAAA,EAAA,MAAA,EAAA,QEwBlB,YFxBkB,CEwBL,YFxBK,EAAA,OAAA,CAAA,EAAA,kBEyBR,mBFzBQ,GEyBc,mBFzBd,CAAA,GE0BxB,mCF1BwB,CE0BY,YF1BZ,EE0B0B,MF1B1B,EE0BkC,KF1BlC,EE0ByC,SF1BzC,CAAA;KE4BvB,yCFxBmB,CAAA,YAAA,EAAA,MAAA,EAAA,QE2Bd,YF3Bc,CE2BD,YF3BC,EAAA,OAAA,CAAA,EAAA,kBE4BJ,mBF5BI,GE4BkB,mBF5BlB,CAAA,GE6BpB,8BF7BoB,CE6BW,YF7BX,EE6ByB,MF7BzB,EE6BiC,KF7BjC,EE6BwC,SF7BxC,CAAA;KE+BnB,4CF/BsC,CAAA,YAAA,EAAA,MAAA,EAAA,QEkCjC,YFlCiC,CEkCpB,YFlCoB,EAAA,OAAA,CAAA,EAAA,kBEmCvB,mBFnCuB,GEmCD,mBFnCC,CAAA,GEoCvC,iCFpCuC,CEoCL,YFpCK,EEoCS,MFpCT,EEoCiB,KFpCjB,EEoCwB,SFpCxB,CAAA;AACrC,KEqCM,+BFrCN,CAAA,WAAA,EAAA,gBAAA,EAAA,iBAAA,EAAA,kBEyCc,mBFzCd,GEyCoC,mBFzCpC,CAAA,GE0CF,IF1CE,CE2CF,8CF3CE,CE4CA,WF5CA,EE6CA,gBF7CA,EE8CA,WF9CA,EE+CA,SF/CA,CAAA,GEiDF,4CFjDE,CEkDA,WFlDA,EEmDA,gBFnDA,EEoDA,WFpDA,EEqDA,SFrDA,CAAA,GEuDF,yCFvDE,CEwDA,WFxDA,EEyDA,gBFzDA,EE0DA,WF1DA,EE2DA,SF3DA,CAAA,EAAA,SAAA,GAAA,UAAA,CAAA,GAAA;EACF,QAAA,EE8DQ,mBF9DR;EACA,OAAA,EE8DO,0BF9DP,CE+DA,WF/DA,EEgEA,gBFhEA,EEiEA,iBFjEA,EEkEA,mBFlEA,CAAA;CAEU;;;AAdiB,KGW1B,yBHTsD,CAAA,WAAA,EAAA,gBAAA,EAAA,iBAAA,EAAA,YAAA,CAAA,GAAA,CAAA,SAAA,EGe9C,YHf8C,EAAA,GGgBtD,MAAA,CAAO,MHhB+C,CGgBxC,WHhBwC,EGgB7B,gBHhB6B,EGgBb,iBHhBa,CAAA;AACrD,KGiBM,+BHjB6C,CAAA,WAAA,EAAA,gBAAA,EAAA,iBAAA,EAAA,YAAA,CAAA,GGsBrD,IHtBqD,CGuBvD,kBHvBuD,CGuBpC,WHvBoC,EGuBzB,gBHvByB,EGuBT,YHvBS,CAAA,EAAA,aAAA,GAAA,YAAA,CAAA,GAAA;EAEpD,WAAA,EAAA,MAAA;EAIa,UAAM,EGsBlB,yBHtBkB,CGuBhB,WHvBgB,EGwBhB,gBHxBgB,EGyBhB,iBHzBgB,EG0BhB,YH1BgB,CAAA,GAAA,OG4BX,SH5BW;CAAmB;;;AAPgB,KIatD,kBJZC,CAAA,WAAmD,EAAA,gBAAA,EAAA,iBAAA,EAAA,kBIgBrC,mBJhBqC,GIgBf,mBJhBe,EAAA,aAAA,KAAA,CAAA,GAAA,CAAA,OAAA,EImB9C,oBJnB8C,CImBzB,SJnByB,EImBd,UJnBc,CAAA,EAAA,GIoBpD,MAAA,CAAO,MJpB6C,CIoBtC,WJpBsC,EIoB3B,gBJpB2B,EIoBX,iBJpBW,CAAA;AAAA,KIsBpD,sCJpBuB,CAAA,YAAA,EAAA,MAAA,EAAA,QIuBlB,YJvBkB,EAAA,kBIwBR,mBJxBQ,GIwBc,mBJxBd,CAAA,GIyBxB,2BJzBwB,CIyBI,YJzBJ,EIyBkB,MJzBlB,EIyB0B,KJzB1B,EIyBiC,SJzBjC,CAAA;KI2BvB,iCJvBmB,CAAA,YAAA,EAAA,MAAA,EAAA,QI0Bd,YJ1Bc,EAAA,kBI2BJ,mBJ3BI,GI2BkB,mBJ3BlB,CAAA,GI4BpB,sBJ5BoB,CI4BG,YJ5BH,EI4BiB,MJ5BjB,EI4ByB,KJ5BzB,EI4BgC,SJ5BhC,CAAA;KI8BnB,oCJ9BsC,CAAA,YAAA,EAAA,MAAA,EAAA,QIiCjC,YJjCiC,EAAA,kBIkCvB,mBJlCuB,GIkCD,mBJlCC,CAAA,GImCvC,yBJnCuC,CImCb,YJnCa,EImCC,MJnCD,EImCS,KJnCT,EImCgB,SJnChB,CAAA;AACrC,KIoCM,uBJpCN,CAAA,WAAA,EAAA,gBAAA,EAAA,iBAAA,EAAA,kBIwCc,mBJxCd,GIwCoC,mBJxCpC,CAAA,GIyCF,IJzCE,CI0CF,sCJ1CE,CI2CA,WJ3CA,EI4CA,gBJ5CA,EI6CA,WJ7CA,EI8CA,SJ9CA,CAAA,GIgDF,oCJhDE,CIiDA,WJjDA,EIkDA,gBJlDA,EImDA,WJnDA,EIoDA,SJpDA,CAAA,GIsDF,iCJtDE,CIuDA,WJvDA,EIwDA,gBJxDA,EIyDA,WJzDA,EI0DA,SJ1DA,CAAA,EAAA,SAAA,GAAA,UAAA,CAAA,GAAA;EACF,QAAA,EI6DQ,mBJ7DR;EACA,OAAA,EI6DO,kBJ7DP,CI8DA,WJ9DA,EI+DA,gBJ/DA,EIgEA,iBJhEA,EIiEA,mBJjEA,CAAA;CAEU;;;iBKCE,gCACP,KAAA,CAAM,MAAM;ELdf,YAAA,EAAA,CAAA,SAAqD,EAAA,uBAAA;IACrD,IAAA,EAAA,MAAA;EAED,CAAA,EAAA,eAAA,CAAA,CAAA,OAAuB,EKsBb,uBLtBa,CKuBpB,SLvBoB,EKwBpB,cLxBoB,EKyBpB,eLzBoB,CAAA,EAAA,GK0BrB,sBAAA,CAAA,eL1BqB,CK0BrB,SL1BqB,EAAA,CK0BrB,cL1BqB,CAAA,SAAA,CAAA,KAAA,CAAA,GK0BrB,iBL1BqB,CAAA,OAAA,CAAA,GK0BrB,iBL1BqB,CAAA,OAAA,CAAA,GK0BrB,kBL1BqB,CK0BrB,cL1BqB,CAAA,EK0BrB,SL1BqB,EK0BrB,mBAAA,CL1BqB;EAIV,oBAAM,EAAA,CAAA,SAAA,EAAA,uBAAA;IAAmB,IAAA,EAAA,MAAA;EACrC,CAAA,EAAA,eAAA,CAAA,CAAA,OAAA,EK0CS,+BL1CT,CK2CE,SL3CF,EK4CE,cL5CF,EK6CE,eL7CF,CAAA,EAAA,GK8CC,sBAAA,CAAA,uBL9CD,CK8CC,SL9CD,EAAA,CK8CC,cL9CD,CAAA,SAAA,CAAA,KAAA,CAAA,GK8CC,iBL9CD,CAAA,OAAA,CAAA,GK8CC,iBL9CD,CAAA,OAAA,CAAA,GK8CC,kBL9CD,CK8CC,cL9CD,CAAA,EK8CC,SL9CD,EK8CC,mBAAA,EL9CD,OAAA,CAAA;EACF,eAAA,EAAA,CAAA,SAAA,EAAA,uBAAA;IACA,IAAA,EAAA,MAAA;EAEU,CAAA,EAAA,eAAA,EAAA,UAAA,CAAA,CAAA,OAAA,EKwDC,+BLxDD,CKyDN,SLzDM,EK0DN,cL1DM,EK2DN,eL3DM,EK4DN,UL5DM,CAAA,EAAA,GK6DP,sBAAA,CAAA,kBL7DO,CK6DP,SL7DO,EAAA,CK6DP,cL7DO,CAAA,SAAA,CAAA,KAAA,CAAA,GAAA,KAAA,GK6DP,iBL7DO,CAAA,OAAA,CAAA,GK6DP,kBL7DO,CK6DP,cL7DO,CAAA,EK6DP,UL7DO,EAAA,OAAA,CAAA;CACa"}
1
+ {"version":3,"file":"index.d.cts","names":[],"sources":["../src/errors.ts","../src/types.ts","../src/infiniteQueryOptions.ts","../src/mutationOptions.ts","../src/queryOptions.ts","../src/index.ts"],"sourcesContent":[],"mappings":";;;;;cAEM;cACA;KAED;;AAL0B,CAAA,GAEzB,KAAA,GAAA,KAAA,EAAA,YAAqD,OAAA,CAAA,GAAA;EACrD,MAAA,EAAA,CAAA,KAAA,EAMY,KAAA,CAAM,KANiC,CAAA,OAAA,CAAA,EAAA,GAMd,SANc;AAAA,CAAA,GAEpD,CAAA,CAKC,QALD,CAAA,SAAA,CAAA,KAAuB,CAAA,GAMxB,MANwB,CAAA,KAAA,EAAA,KAAA,CAAA,GAOxB,QAPwB,SAAA;EAIV,IAAM,EAAA,MAAA;CAAmB,GAAA,QAK7B,QAJR,CAAA,MAAA,CAAA,IAAA,CAAA,OAAA,EAKa,OALb,CAKqB,QALrB,EAAA;EACF,IAAA,EAIyC,CAJzC;AACA,CAAA,CAAA,EAAA,GAIS,SAJT,EAEU,GAIR,MAJQ,CAAA,KAAA,EAAA,KAAA,CAAA,CAAA;AACa,cAKd,kBALc,CAAA,iBAAA;EAAkB,IAAA,EAAA,MAAA;CAA1B,GAAA,KAAA,GAAA,KAAA,CAAA,SAOT,KAAA,CAPS;EACN,SAAA,IAAA,EAAA,OAOW,qBAPX;EAEP,SAAA,OAAA,EAMc,QANd;EAAM,SAAA,YAAA,EAOa,KAAA,CAAM,KAPnB,CAOyB,QAPzB,CAAA;EAEC,WAAA,CAAA,OAAA,EAAkB,MAAA,EAAA,OAAA,EAQlB,QARkB,EAAA,KAAA,EASpB,KAAA,CAAM,KATc,CASR,QATQ,CAAA;EAGP,KAAA,CAAA,OAAA,CAAA,CAAA,OAAA,EAeX,uBAfW,CAgBlB,QAhBkB,SAAA;IACJ,IAAA,EAAA,MAAA;EACiB,CAAA,GAcK,QAdL,GAAA,KAAA,EAe/B,OAf+B,CAAA,CAAA,EAiBhC,OAjBgC;;AAGxB,cA+BA,iBA/BA,CAAA,OAAA,CAAA,SA+BmC,KAAA,CA/BnC;EACU,SAAA,IAAA,EAAA,OA+BC,oBA/BD;EAAZ,SAAM,WAAA,EAgCO,KAAA,CAAM,KAhCb,CAgCmB,OAhCnB,CAAA;EAUX,WAAA,CAAA,OAAA,EAAA,MAAA,EAAA,MAAA,EAuBiC,OAvBjC;EAAoC,KAAA,CAAA,OAAA,CAAA,CAAA,OAAA,EA8B7B,uBA9B6B,CAAA,KAAA,EA8BE,OA9BF,CAAA,GA8Ba,MA9Bb,CAAA,MAAA,EAAA,OAAA,CAAA,CAAA,EA+BrC,OA/BqC;;;;KCvC9B,mBAAA,6BAGV;;;ADDyD,KEctD,0BFboD,CAAA,WAAA,EAAA,gBAAA,EAAA,iBAAA,EAAA,kBEiBrC,mBFjBqC,GEiBf,mBFjBe,EAAA,aAAA,KAAA,CAAA,GAAA,CAAA,OAAA,EEoB9C,oBFpB8C,CEoBzB,SFpByB,EEoBd,UFpBc,CAAA,EAAA,GEqBpD,MAAA,CAAO,MFrB6C,CEqBtC,WFrBsC,EEqB3B,gBFrB2B,EEqBX,iBFrBW,CAAA;AAAA,KEuBpD,8CFrBuB,CAAA,YAAA,EAAA,MAAA,EAAA,QEwBlB,YFxBkB,CEwBL,YFxBK,EAAA,OAAA,CAAA,EAAA,kBEyBR,mBFzBQ,GEyBc,mBFzBd,CAAA,GE0BxB,mCF1BwB,CE0BY,YF1BZ,EE0B0B,MF1B1B,EE0BkC,KF1BlC,EE0ByC,SF1BzC,CAAA;KE4BvB,yCFxBmB,CAAA,YAAA,EAAA,MAAA,EAAA,QE2Bd,YF3Bc,CE2BD,YF3BC,EAAA,OAAA,CAAA,EAAA,kBE4BJ,mBF5BI,GE4BkB,mBF5BlB,CAAA,GE6BpB,8BF7BoB,CE6BW,YF7BX,EE6ByB,MF7BzB,EE6BiC,KF7BjC,EE6BwC,SF7BxC,CAAA;KE+BnB,4CF/BsC,CAAA,YAAA,EAAA,MAAA,EAAA,QEkCjC,YFlCiC,CEkCpB,YFlCoB,EAAA,OAAA,CAAA,EAAA,kBEmCvB,mBFnCuB,GEmCD,mBFnCC,CAAA,GEoCvC,iCFpCuC,CEoCL,YFpCK,EEoCS,MFpCT,EEoCiB,KFpCjB,EEoCwB,SFpCxB,CAAA;AACrC,KEqCM,+BFrCN,CAAA,WAAA,EAAA,gBAAA,EAAA,iBAAA,EAAA,kBEyCc,mBFzCd,GEyCoC,mBFzCpC,CAAA,GE0CF,IF1CE,CE2CF,8CF3CE,CE4CA,WF5CA,EE6CA,gBF7CA,EE8CA,WF9CA,EE+CA,SF/CA,CAAA,GEiDF,4CFjDE,CEkDA,WFlDA,EEmDA,gBFnDA,EEoDA,WFpDA,EEqDA,SFrDA,CAAA,GEuDF,yCFvDE,CEwDA,WFxDA,EEyDA,gBFzDA,EE0DA,WF1DA,EE2DA,SF3DA,CAAA,EAAA,SAAA,GAAA,UAAA,CAAA,GAAA;EACF,QAAA,EE8DQ,mBF9DR;EACA,OAAA,EE8DO,0BF9DP,CE+DA,WF/DA,EEgEA,gBFhEA,EEiEA,iBFjEA,EEkEA,mBFlEA,CAAA;CAEU;;;AAdiB,KGW1B,yBHTsD,CAAA,WAAA,EAAA,gBAAA,EAAA,iBAAA,EAAA,YAAA,CAAA,GAAA,CAAA,SAAA,EGe9C,YHf8C,EAAA,GGgBtD,MAAA,CAAO,MHhB+C,CGgBxC,WHhBwC,EGgB7B,gBHhB6B,EGgBb,iBHhBa,CAAA;AACrD,KGiBM,+BHjB6C,CAAA,WAAA,EAAA,gBAAA,EAAA,iBAAA,EAAA,YAAA,CAAA,GGsBrD,IHtBqD,CGuBvD,kBHvBuD,CGuBpC,WHvBoC,EGuBzB,gBHvByB,EGuBT,YHvBS,CAAA,EAAA,aAAA,GAAA,YAAA,CAAA,GAAA;EAEpD,WAAA,EAAA,MAAA;EAIa,UAAM,EGsBlB,yBHtBkB,CGuBhB,WHvBgB,EGwBhB,gBHxBgB,EGyBhB,iBHzBgB,EG0BhB,YH1BgB,CAAA,GAAA,OG4BX,SH5BW;CAAmB;;;AAPgB,KIatD,kBJZC,CAAA,WAAmD,EAAA,gBAAA,EAAA,iBAAA,EAAA,kBIgBrC,mBJhBqC,GIgBf,mBJhBe,EAAA,aAAA,KAAA,CAAA,GAAA,CAAA,OAAA,EImB9C,oBJnB8C,CImBzB,SJnByB,EImBd,UJnBc,CAAA,EAAA,GIoBpD,MAAA,CAAO,MJpB6C,CIoBtC,WJpBsC,EIoB3B,gBJpB2B,EIoBX,iBJpBW,CAAA;AAAA,KIsBpD,sCJpBuB,CAAA,YAAA,EAAA,MAAA,EAAA,QIuBlB,YJvBkB,EAAA,kBIwBR,mBJxBQ,GIwBc,mBJxBd,CAAA,GIyBxB,2BJzBwB,CIyBI,YJzBJ,EIyBkB,MJzBlB,EIyB0B,KJzB1B,EIyBiC,SJzBjC,CAAA;KI2BvB,iCJvBmB,CAAA,YAAA,EAAA,MAAA,EAAA,QI0Bd,YJ1Bc,EAAA,kBI2BJ,mBJ3BI,GI2BkB,mBJ3BlB,CAAA,GI4BpB,sBJ5BoB,CI4BG,YJ5BH,EI4BiB,MJ5BjB,EI4ByB,KJ5BzB,EI4BgC,SJ5BhC,CAAA;KI8BnB,oCJ9BsC,CAAA,YAAA,EAAA,MAAA,EAAA,QIiCjC,YJjCiC,EAAA,kBIkCvB,mBJlCuB,GIkCD,mBJlCC,CAAA,GImCvC,yBJnCuC,CImCb,YJnCa,EImCC,MJnCD,EImCS,KJnCT,EImCgB,SJnChB,CAAA;AACrC,KIoCM,uBJpCN,CAAA,WAAA,EAAA,gBAAA,EAAA,iBAAA,EAAA,kBIwCc,mBJxCd,GIwCoC,mBJxCpC,CAAA,GIyCF,IJzCE,CI0CF,sCJ1CE,CI2CA,WJ3CA,EI4CA,gBJ5CA,EI6CA,WJ7CA,EI8CA,SJ9CA,CAAA,GIgDF,oCJhDE,CIiDA,WJjDA,EIkDA,gBJlDA,EImDA,WJnDA,EIoDA,SJpDA,CAAA,GIsDF,iCJtDE,CIuDA,WJvDA,EIwDA,gBJxDA,EIyDA,WJzDA,EI0DA,SJ1DA,CAAA,EAAA,SAAA,GAAA,UAAA,CAAA,GAAA;EACF,QAAA,EI6DQ,mBJ7DR;EACA,OAAA,EI6DO,kBJ7DP,CI8DA,WJ9DA,EI+DA,gBJ/DA,EIgEA,iBJhEA,EIiEA,mBJjEA,CAAA;CAEU;;;iBKCE,gCACP,KAAA,CAAM,MAAM;ELdf,YAAA,EAAA,CAAA,SAAqD,EAAA,uBAAA;IACrD,IAAA,EAAA,MAAA;EAED,CAAA,EAAA,eAAA,CAAA,CAAA,OAAuB,EK0BP,uBL1BO,CK0BP,SL1BO,EK0BP,cL1BO,EK0BP,eL1BO,CAAA,EAAA,GK0BP,sBAAA,CAAA,eL1BO,CK0BP,SL1BO,EAAA,CK0BP,cL1BO,CAAA,SAAA,CAAA,KAAA,CAAA,GK0BP,iBL1BO,CAAA,OAAA,CAAA,GK0BP,iBL1BO,CAAA,OAAA,CAAA,GK0BP,kBL1BO,CK0BP,cL1BO,CAAA,EK0BP,SL1BO,EK0BP,mBAAA,CL1BO;EAIV,oBAAM,EAAA,CAAA,SAAA,EAAA,uBAAA;IAAmB,IAAA,EAAA,MAAA;EACrC,CAAA,EAAA,eAAA,CAAA,CAAA,OAAA,EK8Ce,+BL9Cf,CK8Ce,SL9Cf,EK8Ce,cL9Cf,EK8Ce,eL9Cf,CAAA,EAAA,GK8Ce,sBAAA,CAAA,uBL9Cf,CK8Ce,SL9Cf,EAAA,CK8Ce,cL9Cf,CAAA,SAAA,CAAA,KAAA,CAAA,GK8Ce,iBL9Cf,CAAA,OAAA,CAAA,GK8Ce,iBL9Cf,CAAA,OAAA,CAAA,GK8Ce,kBL9Cf,CK8Ce,cL9Cf,CAAA,EK8Ce,SL9Cf,EK8Ce,mBAAA,EL9Cf,OAAA,CAAA;EACF,eAAA,EAAA,CAAA,SAAA,EAAA,uBAAA;IACA,IAAA,EAAA,MAAA;EAEU,CAAA,EAAA,eAAA,EAAA,UAAA,CAAA,CAAA,OAAA,EK4DE,+BL5DF,CK4DE,SL5DF,EK4DE,cL5DF,EK4DE,eL5DF,EK4DE,UL5DF,CAAA,EAAA,GK4DE,sBAAA,CAAA,kBL5DF,CK4DE,SL5DF,EAAA,CK4DE,cL5DF,CAAA,SAAA,CAAA,KAAA,CAAA,GAAA,KAAA,GK4DE,iBL5DF,CAAA,OAAA,CAAA,GK4DE,kBL5DF,CK4DE,cL5DF,CAAA,EK4DE,UL5DF,EAAA,OAAA,CAAA;CACa;AAAkB,iBKO7B,mCLP6B,CAAA,KAAA,CAAA,CAAA,OAAA,EKQlC,cAAA,CAAe,cLRmB,CKQJ,KLRI,EAAA,KAAA,CAAA,CAAA,EAAA;EAA1B,YAAA,EAAA,CAAA,SAAA,EAAA,uBAAA;IACN,IAAA,EAAA,MAAA;EAEP,CAAA,EAAA,eAAA,CAAA,CAAA,OAAA,EKeS,uBLfT,CKgBE,SLhBF,EKiBE,cLjBF,EKkBE,eLlBF,CAAA,EAAA,GKmBC,sBAAA,CAAA,eLnBD,CKmBC,SLnBD,EAAA,CKmBC,cLnBD,CAAA,SAAA,CAAA,KAAA,CAAA,GKmBC,iBLnBD,CAAA,OAAA,CAAA,GKmBC,iBLnBD,CAAA,OAAA,CAAA,GKmBC,kBLnBD,CKmBC,cLnBD,CAAA,EKmBC,SLnBD,EKmBC,mBAAA,CLnBD;EAAM,oBAAA,EAAA,CAAA,SAAA,EAAA,uBAAA;IAEC,IAAA,EAAA,MAAA;EAGW,CAAA,EAAA,eAAA,CAAA,CAAA,OAAA,EKmCT,+BLnCS,CKoChB,SLpCgB,EKqChB,cLrCgB,EKsChB,eLtCgB,CAAA,EAAA,GKuCjB,sBAAA,CAAA,uBLvCiB,CKuCjB,SLvCiB,EAAA,CKuCjB,cLvCiB,CAAA,SAAA,CAAA,KAAA,CAAA,GKuCjB,iBLvCiB,CAAA,OAAA,CAAA,GKuCjB,iBLvCiB,CAAA,OAAA,CAAA,GKuCjB,kBLvCiB,CKuCjB,cLvCiB,CAAA,EKuCjB,SLvCiB,EKuCjB,mBAAA,ELvCiB,OAAA,CAAA;EACJ,eAAA,EAAA,CAAA,SAAA,EAAA,uBAAA;IACiB,IAAA,EAAA,MAAA;EAAZ,CAAA,EAAM,eAAA,EAAA,UAAA,CAAA,CAAA,OAAA,EKmDhB,+BLnDgB,CKoDvB,SLpDuB,EKqDvB,cLrDuB,EKsDvB,eLtDuB,EKuDvB,ULvDuB,CAAA,EAAA,GKwDxB,sBAAA,CAAA,kBLxDwB,CKwDxB,SLxDwB,EAAA,CKwDxB,cLxDwB,CAAA,SAAA,CAAA,KAAA,CAAA,GAAA,KAAA,GKwDxB,iBLxDwB,CAAA,OAAA,CAAA,GKwDxB,kBLxDwB,CKwDxB,cLxDwB,CAAA,EKwDxB,ULxDwB,EAAA,OAAA,CAAA;CAGlB"}
package/dist/index.d.mts CHANGED
@@ -1,4 +1,4 @@
1
- import { Cause, Effect, Layer } from "effect";
1
+ import { Cause, Effect, Layer, ManagedRuntime } from "effect";
2
2
  import * as _tanstack_react_query0 from "@tanstack/react-query";
3
3
  import { DefinedInitialDataInfiniteOptions, DefinedInitialDataOptions, InfiniteData, QueryFunctionContext, UndefinedInitialDataInfiniteOptions, UndefinedInitialDataOptions, UnusedSkipTokenInfiniteOptions, UnusedSkipTokenOptions, UseMutationOptions, skipToken } from "@tanstack/react-query";
4
4
 
@@ -74,6 +74,17 @@ declare function createEffectQuery<Input>(layer: Layer.Layer<Input, never, never
74
74
  _tag: string;
75
75
  }, TFnRequirements, TVariables>(options: EffectQueryMutationOptionsInput<TFnResult, TFnErrorResult, TFnRequirements, TVariables>) => _tanstack_react_query0.UseMutationOptions<TFnResult, [TFnErrorResult] extends [never] ? never : EffectQueryDefect<unknown> | EffectQueryFailure<TFnErrorResult>, TVariables, unknown>;
76
76
  };
77
+ declare function createEffectQueryFromManagedRuntime<Input>(runtime: ManagedRuntime.ManagedRuntime<Input, never>): {
78
+ queryOptions: <TFnResult, TFnErrorResult extends {
79
+ _tag: string;
80
+ }, TFnRequirements>(options: EffectQueryOptionsInput<TFnResult, TFnErrorResult, TFnRequirements>) => _tanstack_react_query0.UseQueryOptions<TFnResult, [TFnErrorResult] extends [never] ? EffectQueryDefect<unknown> : EffectQueryDefect<unknown> | EffectQueryFailure<TFnErrorResult>, TFnResult, EffectQueryQueryKey>;
81
+ infiniteQueryOptions: <TFnResult, TFnErrorResult extends {
82
+ _tag: string;
83
+ }, TFnRequirements>(options: EffectInfiniteQueryOptionsInput<TFnResult, TFnErrorResult, TFnRequirements>) => _tanstack_react_query0.UseInfiniteQueryOptions<TFnResult, [TFnErrorResult] extends [never] ? EffectQueryDefect<unknown> : EffectQueryDefect<unknown> | EffectQueryFailure<TFnErrorResult>, TFnResult, EffectQueryQueryKey, unknown>;
84
+ mutationOptions: <TFnResult, TFnErrorResult extends {
85
+ _tag: string;
86
+ }, TFnRequirements, TVariables>(options: EffectQueryMutationOptionsInput<TFnResult, TFnErrorResult, TFnRequirements, TVariables>) => _tanstack_react_query0.UseMutationOptions<TFnResult, [TFnErrorResult] extends [never] ? never : EffectQueryDefect<unknown> | EffectQueryFailure<TFnErrorResult>, TVariables, unknown>;
87
+ };
77
88
  //#endregion
78
- export { createEffectQuery };
89
+ export { createEffectQuery, createEffectQueryFromManagedRuntime };
79
90
  //# sourceMappingURL=index.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.mts","names":[],"sources":["../src/errors.ts","../src/types.ts","../src/infiniteQueryOptions.ts","../src/mutationOptions.ts","../src/queryOptions.ts","../src/index.ts"],"sourcesContent":[],"mappings":";;;;;cAEM;cACA;KAED;;AAL0B,CAAA,GAEzB,KAAA,GAAA,KAAA,EAAA,YAAqD,OAAA,CAAA,GAAA;EACrD,MAAA,EAAA,CAAA,KAAA,EAMY,KAAA,CAAM,KANiC,CAAA,OAAA,CAAA,EAAA,GAMd,SANc;AAAA,CAAA,GAEpD,CAAA,CAKC,QALD,CAAA,SAAA,CAAA,KAAuB,CAAA,GAMxB,MANwB,CAAA,KAAA,EAAA,KAAA,CAAA,GAOxB,QAPwB,SAAA;EAIV,IAAM,EAAA,MAAA;CAAmB,GAAA,QAK7B,QAJR,CAAA,MAAA,CAAA,IAAA,CAAA,OAAA,EAKa,OALb,CAKqB,QALrB,EAAA;EACF,IAAA,EAIyC,CAJzC;AACA,CAAA,CAAA,EAAA,GAIS,SAJT,EAEU,GAIR,MAJQ,CAAA,KAAA,EAAA,KAAA,CAAA,CAAA;AACa,cAKd,kBALc,CAAA,iBAAA;EAAkB,IAAA,EAAA,MAAA;CAA1B,GAAA,KAAA,GAAA,KAAA,CAAA,SAOT,KAAA,CAPS;EACN,SAAA,IAAA,EAAA,OAOW,qBAPX;EAEP,SAAA,OAAA,EAMc,QANd;EAAM,SAAA,YAAA,EAOa,KAAA,CAAM,KAPnB,CAOyB,QAPzB,CAAA;EAEC,WAAA,CAAA,OAAA,EAAkB,MAAA,EAAA,OAAA,EAQlB,QARkB,EAAA,KAAA,EASpB,KAAA,CAAM,KATc,CASR,QATQ,CAAA;EAGP,KAAA,CAAA,OAAA,CAAA,CAAA,OAAA,EAeX,uBAfW,CAgBlB,QAhBkB,SAAA;IACJ,IAAA,EAAA,MAAA;EACiB,CAAA,GAcK,QAdL,GAAA,KAAA,EAe/B,OAf+B,CAAA,CAAA,EAiBhC,OAjBgC;;AAGxB,cA+BA,iBA/BA,CAAA,OAAA,CAAA,SA+BmC,KAAA,CA/BnC;EACU,SAAA,IAAA,EAAA,OA+BC,oBA/BD;EAAZ,SAAM,WAAA,EAgCO,KAAA,CAAM,KAhCb,CAgCmB,OAhCnB,CAAA;EAUX,WAAA,CAAA,OAAA,EAAA,MAAA,EAAA,MAAA,EAuBiC,OAvBjC;EAAoC,KAAA,CAAA,OAAA,CAAA,CAAA,OAAA,EA8B7B,uBA9B6B,CAAA,KAAA,EA8BE,OA9BF,CAAA,GA8Ba,MA9Bb,CAAA,MAAA,EAAA,OAAA,CAAA,CAAA,EA+BrC,OA/BqC;;;;KCvC9B,mBAAA,6BAGV;;;ADDyD,KEctD,0BFboD,CAAA,WAAA,EAAA,gBAAA,EAAA,iBAAA,EAAA,kBEiBrC,mBFjBqC,GEiBf,mBFjBe,EAAA,aAAA,KAAA,CAAA,GAAA,CAAA,OAAA,EEoB9C,oBFpB8C,CEoBzB,SFpByB,EEoBd,UFpBc,CAAA,EAAA,GEqBpD,MAAA,CAAO,MFrB6C,CEqBtC,WFrBsC,EEqB3B,gBFrB2B,EEqBX,iBFrBW,CAAA;AAAA,KEuBpD,8CFrBuB,CAAA,YAAA,EAAA,MAAA,EAAA,QEwBlB,YFxBkB,CEwBL,YFxBK,EAAA,OAAA,CAAA,EAAA,kBEyBR,mBFzBQ,GEyBc,mBFzBd,CAAA,GE0BxB,mCF1BwB,CE0BY,YF1BZ,EE0B0B,MF1B1B,EE0BkC,KF1BlC,EE0ByC,SF1BzC,CAAA;KE4BvB,yCFxBmB,CAAA,YAAA,EAAA,MAAA,EAAA,QE2Bd,YF3Bc,CE2BD,YF3BC,EAAA,OAAA,CAAA,EAAA,kBE4BJ,mBF5BI,GE4BkB,mBF5BlB,CAAA,GE6BpB,8BF7BoB,CE6BW,YF7BX,EE6ByB,MF7BzB,EE6BiC,KF7BjC,EE6BwC,SF7BxC,CAAA;KE+BnB,4CF/BsC,CAAA,YAAA,EAAA,MAAA,EAAA,QEkCjC,YFlCiC,CEkCpB,YFlCoB,EAAA,OAAA,CAAA,EAAA,kBEmCvB,mBFnCuB,GEmCD,mBFnCC,CAAA,GEoCvC,iCFpCuC,CEoCL,YFpCK,EEoCS,MFpCT,EEoCiB,KFpCjB,EEoCwB,SFpCxB,CAAA;AACrC,KEqCM,+BFrCN,CAAA,WAAA,EAAA,gBAAA,EAAA,iBAAA,EAAA,kBEyCc,mBFzCd,GEyCoC,mBFzCpC,CAAA,GE0CF,IF1CE,CE2CF,8CF3CE,CE4CA,WF5CA,EE6CA,gBF7CA,EE8CA,WF9CA,EE+CA,SF/CA,CAAA,GEiDF,4CFjDE,CEkDA,WFlDA,EEmDA,gBFnDA,EEoDA,WFpDA,EEqDA,SFrDA,CAAA,GEuDF,yCFvDE,CEwDA,WFxDA,EEyDA,gBFzDA,EE0DA,WF1DA,EE2DA,SF3DA,CAAA,EAAA,SAAA,GAAA,UAAA,CAAA,GAAA;EACF,QAAA,EE8DQ,mBF9DR;EACA,OAAA,EE8DO,0BF9DP,CE+DA,WF/DA,EEgEA,gBFhEA,EEiEA,iBFjEA,EEkEA,mBFlEA,CAAA;CAEU;;;AAdiB,KGW1B,yBHTsD,CAAA,WAAA,EAAA,gBAAA,EAAA,iBAAA,EAAA,YAAA,CAAA,GAAA,CAAA,SAAA,EGe9C,YHf8C,EAAA,GGgBtD,MAAA,CAAO,MHhB+C,CGgBxC,WHhBwC,EGgB7B,gBHhB6B,EGgBb,iBHhBa,CAAA;AACrD,KGiBM,+BHjB6C,CAAA,WAAA,EAAA,gBAAA,EAAA,iBAAA,EAAA,YAAA,CAAA,GGsBrD,IHtBqD,CGuBvD,kBHvBuD,CGuBpC,WHvBoC,EGuBzB,gBHvByB,EGuBT,YHvBS,CAAA,EAAA,aAAA,GAAA,YAAA,CAAA,GAAA;EAEpD,WAAA,EAAA,MAAA;EAIa,UAAM,EGsBlB,yBHtBkB,CGuBhB,WHvBgB,EGwBhB,gBHxBgB,EGyBhB,iBHzBgB,EG0BhB,YH1BgB,CAAA,GAAA,OG4BX,SH5BW;CAAmB;;;AAPgB,KIatD,kBJZC,CAAA,WAAmD,EAAA,gBAAA,EAAA,iBAAA,EAAA,kBIgBrC,mBJhBqC,GIgBf,mBJhBe,EAAA,aAAA,KAAA,CAAA,GAAA,CAAA,OAAA,EImB9C,oBJnB8C,CImBzB,SJnByB,EImBd,UJnBc,CAAA,EAAA,GIoBpD,MAAA,CAAO,MJpB6C,CIoBtC,WJpBsC,EIoB3B,gBJpB2B,EIoBX,iBJpBW,CAAA;AAAA,KIsBpD,sCJpBuB,CAAA,YAAA,EAAA,MAAA,EAAA,QIuBlB,YJvBkB,EAAA,kBIwBR,mBJxBQ,GIwBc,mBJxBd,CAAA,GIyBxB,2BJzBwB,CIyBI,YJzBJ,EIyBkB,MJzBlB,EIyB0B,KJzB1B,EIyBiC,SJzBjC,CAAA;KI2BvB,iCJvBmB,CAAA,YAAA,EAAA,MAAA,EAAA,QI0Bd,YJ1Bc,EAAA,kBI2BJ,mBJ3BI,GI2BkB,mBJ3BlB,CAAA,GI4BpB,sBJ5BoB,CI4BG,YJ5BH,EI4BiB,MJ5BjB,EI4ByB,KJ5BzB,EI4BgC,SJ5BhC,CAAA;KI8BnB,oCJ9BsC,CAAA,YAAA,EAAA,MAAA,EAAA,QIiCjC,YJjCiC,EAAA,kBIkCvB,mBJlCuB,GIkCD,mBJlCC,CAAA,GImCvC,yBJnCuC,CImCb,YJnCa,EImCC,MJnCD,EImCS,KJnCT,EImCgB,SJnChB,CAAA;AACrC,KIoCM,uBJpCN,CAAA,WAAA,EAAA,gBAAA,EAAA,iBAAA,EAAA,kBIwCc,mBJxCd,GIwCoC,mBJxCpC,CAAA,GIyCF,IJzCE,CI0CF,sCJ1CE,CI2CA,WJ3CA,EI4CA,gBJ5CA,EI6CA,WJ7CA,EI8CA,SJ9CA,CAAA,GIgDF,oCJhDE,CIiDA,WJjDA,EIkDA,gBJlDA,EImDA,WJnDA,EIoDA,SJpDA,CAAA,GIsDF,iCJtDE,CIuDA,WJvDA,EIwDA,gBJxDA,EIyDA,WJzDA,EI0DA,SJ1DA,CAAA,EAAA,SAAA,GAAA,UAAA,CAAA,GAAA;EACF,QAAA,EI6DQ,mBJ7DR;EACA,OAAA,EI6DO,kBJ7DP,CI8DA,WJ9DA,EI+DA,gBJ/DA,EIgEA,iBJhEA,EIiEA,mBJjEA,CAAA;CAEU;;;iBKCE,gCACP,KAAA,CAAM,MAAM;ELdf,YAAA,EAAA,CAAA,SAAqD,EAAA,uBAAA;IACrD,IAAA,EAAA,MAAA;EAED,CAAA,EAAA,eAAA,CAAA,CAAA,OAAuB,EKsBb,uBLtBa,CKuBpB,SLvBoB,EKwBpB,cLxBoB,EKyBpB,eLzBoB,CAAA,EAAA,GK0BrB,sBAAA,CAAA,eL1BqB,CK0BrB,SL1BqB,EAAA,CK0BrB,cL1BqB,CAAA,SAAA,CAAA,KAAA,CAAA,GK0BrB,iBL1BqB,CAAA,OAAA,CAAA,GK0BrB,iBL1BqB,CAAA,OAAA,CAAA,GK0BrB,kBL1BqB,CK0BrB,cL1BqB,CAAA,EK0BrB,SL1BqB,EK0BrB,mBAAA,CL1BqB;EAIV,oBAAM,EAAA,CAAA,SAAA,EAAA,uBAAA;IAAmB,IAAA,EAAA,MAAA;EACrC,CAAA,EAAA,eAAA,CAAA,CAAA,OAAA,EK0CS,+BL1CT,CK2CE,SL3CF,EK4CE,cL5CF,EK6CE,eL7CF,CAAA,EAAA,GK8CC,sBAAA,CAAA,uBL9CD,CK8CC,SL9CD,EAAA,CK8CC,cL9CD,CAAA,SAAA,CAAA,KAAA,CAAA,GK8CC,iBL9CD,CAAA,OAAA,CAAA,GK8CC,iBL9CD,CAAA,OAAA,CAAA,GK8CC,kBL9CD,CK8CC,cL9CD,CAAA,EK8CC,SL9CD,EK8CC,mBAAA,EL9CD,OAAA,CAAA;EACF,eAAA,EAAA,CAAA,SAAA,EAAA,uBAAA;IACA,IAAA,EAAA,MAAA;EAEU,CAAA,EAAA,eAAA,EAAA,UAAA,CAAA,CAAA,OAAA,EKwDC,+BLxDD,CKyDN,SLzDM,EK0DN,cL1DM,EK2DN,eL3DM,EK4DN,UL5DM,CAAA,EAAA,GK6DP,sBAAA,CAAA,kBL7DO,CK6DP,SL7DO,EAAA,CK6DP,cL7DO,CAAA,SAAA,CAAA,KAAA,CAAA,GAAA,KAAA,GK6DP,iBL7DO,CAAA,OAAA,CAAA,GK6DP,kBL7DO,CK6DP,cL7DO,CAAA,EK6DP,UL7DO,EAAA,OAAA,CAAA;CACa"}
1
+ {"version":3,"file":"index.d.mts","names":[],"sources":["../src/errors.ts","../src/types.ts","../src/infiniteQueryOptions.ts","../src/mutationOptions.ts","../src/queryOptions.ts","../src/index.ts"],"sourcesContent":[],"mappings":";;;;;cAEM;cACA;KAED;;AAL0B,CAAA,GAEzB,KAAA,GAAA,KAAA,EAAA,YAAqD,OAAA,CAAA,GAAA;EACrD,MAAA,EAAA,CAAA,KAAA,EAMY,KAAA,CAAM,KANiC,CAAA,OAAA,CAAA,EAAA,GAMd,SANc;AAAA,CAAA,GAEpD,CAAA,CAKC,QALD,CAAA,SAAA,CAAA,KAAuB,CAAA,GAMxB,MANwB,CAAA,KAAA,EAAA,KAAA,CAAA,GAOxB,QAPwB,SAAA;EAIV,IAAM,EAAA,MAAA;CAAmB,GAAA,QAK7B,QAJR,CAAA,MAAA,CAAA,IAAA,CAAA,OAAA,EAKa,OALb,CAKqB,QALrB,EAAA;EACF,IAAA,EAIyC,CAJzC;AACA,CAAA,CAAA,EAAA,GAIS,SAJT,EAEU,GAIR,MAJQ,CAAA,KAAA,EAAA,KAAA,CAAA,CAAA;AACa,cAKd,kBALc,CAAA,iBAAA;EAAkB,IAAA,EAAA,MAAA;CAA1B,GAAA,KAAA,GAAA,KAAA,CAAA,SAOT,KAAA,CAPS;EACN,SAAA,IAAA,EAAA,OAOW,qBAPX;EAEP,SAAA,OAAA,EAMc,QANd;EAAM,SAAA,YAAA,EAOa,KAAA,CAAM,KAPnB,CAOyB,QAPzB,CAAA;EAEC,WAAA,CAAA,OAAA,EAAkB,MAAA,EAAA,OAAA,EAQlB,QARkB,EAAA,KAAA,EASpB,KAAA,CAAM,KATc,CASR,QATQ,CAAA;EAGP,KAAA,CAAA,OAAA,CAAA,CAAA,OAAA,EAeX,uBAfW,CAgBlB,QAhBkB,SAAA;IACJ,IAAA,EAAA,MAAA;EACiB,CAAA,GAcK,QAdL,GAAA,KAAA,EAe/B,OAf+B,CAAA,CAAA,EAiBhC,OAjBgC;;AAGxB,cA+BA,iBA/BA,CAAA,OAAA,CAAA,SA+BmC,KAAA,CA/BnC;EACU,SAAA,IAAA,EAAA,OA+BC,oBA/BD;EAAZ,SAAM,WAAA,EAgCO,KAAA,CAAM,KAhCb,CAgCmB,OAhCnB,CAAA;EAUX,WAAA,CAAA,OAAA,EAAA,MAAA,EAAA,MAAA,EAuBiC,OAvBjC;EAAoC,KAAA,CAAA,OAAA,CAAA,CAAA,OAAA,EA8B7B,uBA9B6B,CAAA,KAAA,EA8BE,OA9BF,CAAA,GA8Ba,MA9Bb,CAAA,MAAA,EAAA,OAAA,CAAA,CAAA,EA+BrC,OA/BqC;;;;KCvC9B,mBAAA,6BAGV;;;ADDyD,KEctD,0BFboD,CAAA,WAAA,EAAA,gBAAA,EAAA,iBAAA,EAAA,kBEiBrC,mBFjBqC,GEiBf,mBFjBe,EAAA,aAAA,KAAA,CAAA,GAAA,CAAA,OAAA,EEoB9C,oBFpB8C,CEoBzB,SFpByB,EEoBd,UFpBc,CAAA,EAAA,GEqBpD,MAAA,CAAO,MFrB6C,CEqBtC,WFrBsC,EEqB3B,gBFrB2B,EEqBX,iBFrBW,CAAA;AAAA,KEuBpD,8CFrBuB,CAAA,YAAA,EAAA,MAAA,EAAA,QEwBlB,YFxBkB,CEwBL,YFxBK,EAAA,OAAA,CAAA,EAAA,kBEyBR,mBFzBQ,GEyBc,mBFzBd,CAAA,GE0BxB,mCF1BwB,CE0BY,YF1BZ,EE0B0B,MF1B1B,EE0BkC,KF1BlC,EE0ByC,SF1BzC,CAAA;KE4BvB,yCFxBmB,CAAA,YAAA,EAAA,MAAA,EAAA,QE2Bd,YF3Bc,CE2BD,YF3BC,EAAA,OAAA,CAAA,EAAA,kBE4BJ,mBF5BI,GE4BkB,mBF5BlB,CAAA,GE6BpB,8BF7BoB,CE6BW,YF7BX,EE6ByB,MF7BzB,EE6BiC,KF7BjC,EE6BwC,SF7BxC,CAAA;KE+BnB,4CF/BsC,CAAA,YAAA,EAAA,MAAA,EAAA,QEkCjC,YFlCiC,CEkCpB,YFlCoB,EAAA,OAAA,CAAA,EAAA,kBEmCvB,mBFnCuB,GEmCD,mBFnCC,CAAA,GEoCvC,iCFpCuC,CEoCL,YFpCK,EEoCS,MFpCT,EEoCiB,KFpCjB,EEoCwB,SFpCxB,CAAA;AACrC,KEqCM,+BFrCN,CAAA,WAAA,EAAA,gBAAA,EAAA,iBAAA,EAAA,kBEyCc,mBFzCd,GEyCoC,mBFzCpC,CAAA,GE0CF,IF1CE,CE2CF,8CF3CE,CE4CA,WF5CA,EE6CA,gBF7CA,EE8CA,WF9CA,EE+CA,SF/CA,CAAA,GEiDF,4CFjDE,CEkDA,WFlDA,EEmDA,gBFnDA,EEoDA,WFpDA,EEqDA,SFrDA,CAAA,GEuDF,yCFvDE,CEwDA,WFxDA,EEyDA,gBFzDA,EE0DA,WF1DA,EE2DA,SF3DA,CAAA,EAAA,SAAA,GAAA,UAAA,CAAA,GAAA;EACF,QAAA,EE8DQ,mBF9DR;EACA,OAAA,EE8DO,0BF9DP,CE+DA,WF/DA,EEgEA,gBFhEA,EEiEA,iBFjEA,EEkEA,mBFlEA,CAAA;CAEU;;;AAdiB,KGW1B,yBHTsD,CAAA,WAAA,EAAA,gBAAA,EAAA,iBAAA,EAAA,YAAA,CAAA,GAAA,CAAA,SAAA,EGe9C,YHf8C,EAAA,GGgBtD,MAAA,CAAO,MHhB+C,CGgBxC,WHhBwC,EGgB7B,gBHhB6B,EGgBb,iBHhBa,CAAA;AACrD,KGiBM,+BHjB6C,CAAA,WAAA,EAAA,gBAAA,EAAA,iBAAA,EAAA,YAAA,CAAA,GGsBrD,IHtBqD,CGuBvD,kBHvBuD,CGuBpC,WHvBoC,EGuBzB,gBHvByB,EGuBT,YHvBS,CAAA,EAAA,aAAA,GAAA,YAAA,CAAA,GAAA;EAEpD,WAAA,EAAA,MAAA;EAIa,UAAM,EGsBlB,yBHtBkB,CGuBhB,WHvBgB,EGwBhB,gBHxBgB,EGyBhB,iBHzBgB,EG0BhB,YH1BgB,CAAA,GAAA,OG4BX,SH5BW;CAAmB;;;AAPgB,KIatD,kBJZC,CAAA,WAAmD,EAAA,gBAAA,EAAA,iBAAA,EAAA,kBIgBrC,mBJhBqC,GIgBf,mBJhBe,EAAA,aAAA,KAAA,CAAA,GAAA,CAAA,OAAA,EImB9C,oBJnB8C,CImBzB,SJnByB,EImBd,UJnBc,CAAA,EAAA,GIoBpD,MAAA,CAAO,MJpB6C,CIoBtC,WJpBsC,EIoB3B,gBJpB2B,EIoBX,iBJpBW,CAAA;AAAA,KIsBpD,sCJpBuB,CAAA,YAAA,EAAA,MAAA,EAAA,QIuBlB,YJvBkB,EAAA,kBIwBR,mBJxBQ,GIwBc,mBJxBd,CAAA,GIyBxB,2BJzBwB,CIyBI,YJzBJ,EIyBkB,MJzBlB,EIyB0B,KJzB1B,EIyBiC,SJzBjC,CAAA;KI2BvB,iCJvBmB,CAAA,YAAA,EAAA,MAAA,EAAA,QI0Bd,YJ1Bc,EAAA,kBI2BJ,mBJ3BI,GI2BkB,mBJ3BlB,CAAA,GI4BpB,sBJ5BoB,CI4BG,YJ5BH,EI4BiB,MJ5BjB,EI4ByB,KJ5BzB,EI4BgC,SJ5BhC,CAAA;KI8BnB,oCJ9BsC,CAAA,YAAA,EAAA,MAAA,EAAA,QIiCjC,YJjCiC,EAAA,kBIkCvB,mBJlCuB,GIkCD,mBJlCC,CAAA,GImCvC,yBJnCuC,CImCb,YJnCa,EImCC,MJnCD,EImCS,KJnCT,EImCgB,SJnChB,CAAA;AACrC,KIoCM,uBJpCN,CAAA,WAAA,EAAA,gBAAA,EAAA,iBAAA,EAAA,kBIwCc,mBJxCd,GIwCoC,mBJxCpC,CAAA,GIyCF,IJzCE,CI0CF,sCJ1CE,CI2CA,WJ3CA,EI4CA,gBJ5CA,EI6CA,WJ7CA,EI8CA,SJ9CA,CAAA,GIgDF,oCJhDE,CIiDA,WJjDA,EIkDA,gBJlDA,EImDA,WJnDA,EIoDA,SJpDA,CAAA,GIsDF,iCJtDE,CIuDA,WJvDA,EIwDA,gBJxDA,EIyDA,WJzDA,EI0DA,SJ1DA,CAAA,EAAA,SAAA,GAAA,UAAA,CAAA,GAAA;EACF,QAAA,EI6DQ,mBJ7DR;EACA,OAAA,EI6DO,kBJ7DP,CI8DA,WJ9DA,EI+DA,gBJ/DA,EIgEA,iBJhEA,EIiEA,mBJjEA,CAAA;CAEU;;;iBKCE,gCACP,KAAA,CAAM,MAAM;ELdf,YAAA,EAAA,CAAA,SAAqD,EAAA,uBAAA;IACrD,IAAA,EAAA,MAAA;EAED,CAAA,EAAA,eAAA,CAAA,CAAA,OAAuB,EK0BP,uBL1BO,CK0BP,SL1BO,EK0BP,cL1BO,EK0BP,eL1BO,CAAA,EAAA,GK0BP,sBAAA,CAAA,eL1BO,CK0BP,SL1BO,EAAA,CK0BP,cL1BO,CAAA,SAAA,CAAA,KAAA,CAAA,GK0BP,iBL1BO,CAAA,OAAA,CAAA,GK0BP,iBL1BO,CAAA,OAAA,CAAA,GK0BP,kBL1BO,CK0BP,cL1BO,CAAA,EK0BP,SL1BO,EK0BP,mBAAA,CL1BO;EAIV,oBAAM,EAAA,CAAA,SAAA,EAAA,uBAAA;IAAmB,IAAA,EAAA,MAAA;EACrC,CAAA,EAAA,eAAA,CAAA,CAAA,OAAA,EK8Ce,+BL9Cf,CK8Ce,SL9Cf,EK8Ce,cL9Cf,EK8Ce,eL9Cf,CAAA,EAAA,GK8Ce,sBAAA,CAAA,uBL9Cf,CK8Ce,SL9Cf,EAAA,CK8Ce,cL9Cf,CAAA,SAAA,CAAA,KAAA,CAAA,GK8Ce,iBL9Cf,CAAA,OAAA,CAAA,GK8Ce,iBL9Cf,CAAA,OAAA,CAAA,GK8Ce,kBL9Cf,CK8Ce,cL9Cf,CAAA,EK8Ce,SL9Cf,EK8Ce,mBAAA,EL9Cf,OAAA,CAAA;EACF,eAAA,EAAA,CAAA,SAAA,EAAA,uBAAA;IACA,IAAA,EAAA,MAAA;EAEU,CAAA,EAAA,eAAA,EAAA,UAAA,CAAA,CAAA,OAAA,EK4DE,+BL5DF,CK4DE,SL5DF,EK4DE,cL5DF,EK4DE,eL5DF,EK4DE,UL5DF,CAAA,EAAA,GK4DE,sBAAA,CAAA,kBL5DF,CK4DE,SL5DF,EAAA,CK4DE,cL5DF,CAAA,SAAA,CAAA,KAAA,CAAA,GAAA,KAAA,GK4DE,iBL5DF,CAAA,OAAA,CAAA,GK4DE,kBL5DF,CK4DE,cL5DF,CAAA,EK4DE,UL5DF,EAAA,OAAA,CAAA;CACa;AAAkB,iBKO7B,mCLP6B,CAAA,KAAA,CAAA,CAAA,OAAA,EKQlC,cAAA,CAAe,cLRmB,CKQJ,KLRI,EAAA,KAAA,CAAA,CAAA,EAAA;EAA1B,YAAA,EAAA,CAAA,SAAA,EAAA,uBAAA;IACN,IAAA,EAAA,MAAA;EAEP,CAAA,EAAA,eAAA,CAAA,CAAA,OAAA,EKeS,uBLfT,CKgBE,SLhBF,EKiBE,cLjBF,EKkBE,eLlBF,CAAA,EAAA,GKmBC,sBAAA,CAAA,eLnBD,CKmBC,SLnBD,EAAA,CKmBC,cLnBD,CAAA,SAAA,CAAA,KAAA,CAAA,GKmBC,iBLnBD,CAAA,OAAA,CAAA,GKmBC,iBLnBD,CAAA,OAAA,CAAA,GKmBC,kBLnBD,CKmBC,cLnBD,CAAA,EKmBC,SLnBD,EKmBC,mBAAA,CLnBD;EAAM,oBAAA,EAAA,CAAA,SAAA,EAAA,uBAAA;IAEC,IAAA,EAAA,MAAA;EAGW,CAAA,EAAA,eAAA,CAAA,CAAA,OAAA,EKmCT,+BLnCS,CKoChB,SLpCgB,EKqChB,cLrCgB,EKsChB,eLtCgB,CAAA,EAAA,GKuCjB,sBAAA,CAAA,uBLvCiB,CKuCjB,SLvCiB,EAAA,CKuCjB,cLvCiB,CAAA,SAAA,CAAA,KAAA,CAAA,GKuCjB,iBLvCiB,CAAA,OAAA,CAAA,GKuCjB,iBLvCiB,CAAA,OAAA,CAAA,GKuCjB,kBLvCiB,CKuCjB,cLvCiB,CAAA,EKuCjB,SLvCiB,EKuCjB,mBAAA,ELvCiB,OAAA,CAAA;EACJ,eAAA,EAAA,CAAA,SAAA,EAAA,uBAAA;IACiB,IAAA,EAAA,MAAA;EAAZ,CAAA,EAAM,eAAA,EAAA,UAAA,CAAA,CAAA,OAAA,EKmDhB,+BLnDgB,CKoDvB,SLpDuB,EKqDvB,cLrDuB,EKsDvB,eLtDuB,EKuDvB,ULvDuB,CAAA,EAAA,GKwDxB,sBAAA,CAAA,kBLxDwB,CKwDxB,SLxDwB,EAAA,CKwDxB,cLxDwB,CAAA,SAAA,CAAA,KAAA,CAAA,GAAA,KAAA,GKwDxB,iBLxDwB,CAAA,OAAA,CAAA,GKwDxB,kBLxDwB,CKwDxB,cLxDwB,CAAA,EKwDxB,ULxDwB,EAAA,OAAA,CAAA;CAGlB"}
package/dist/index.mjs CHANGED
@@ -196,7 +196,10 @@ var EffectQueryRunner = class {
196
196
  //#endregion
197
197
  //#region src/index.ts
198
198
  function createEffectQuery(layer) {
199
- const runner = new EffectQueryRunner(ManagedRuntime.make(layer));
199
+ return createEffectQueryFromManagedRuntime(ManagedRuntime.make(layer));
200
+ }
201
+ function createEffectQueryFromManagedRuntime(runtime) {
202
+ const runner = new EffectQueryRunner(runtime);
200
203
  return {
201
204
  queryOptions: (options) => effectQueryQueryOptions({
202
205
  queryKey: options.queryKey,
@@ -208,5 +211,5 @@ function createEffectQuery(layer) {
208
211
  }
209
212
 
210
213
  //#endregion
211
- export { createEffectQuery };
214
+ export { createEffectQuery, createEffectQueryFromManagedRuntime };
212
215
  //# sourceMappingURL=index.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","names":["queryFn: Exclude<\n UseInfiniteQueryOptions<\n TFnResult,\n TFnErrorResult,\n InfiniteData<TFnResult, unknown>,\n EffectQueryQueryKey,\n unknown\n >[\"queryFn\"],\n SkipToken | undefined\n >","mutationFn: MutationFunction<TFnResult, TVariables>","queryFn: QueryFunction<TFnResult, EffectQueryQueryKey>","this"],"sources":["../src/errors.ts","../src/infiniteQueryOptions.ts","../src/mutationOptions.ts","../src/queryOptions.ts","../src/runner.ts","../src/index.ts"],"sourcesContent":["import { Cause } from \"effect\";\n\nconst EffectQueryFailureTag = \"EffectQueryFailure\" as const;\nconst EffectQueryDefectTag = \"EffectQueryDefect\" as const;\n\ntype EffectQueryErrorMatcher<\n TFailure extends { _tag: string } | never = never,\n TReturn = unknown,\n> = {\n OrElse: (cause: Cause.Cause<unknown>) => TReturn;\n} & ([TFailure] extends [never]\n ? Record<never, never>\n : TFailure extends { _tag: string }\n ? {\n [K in TFailure[\"_tag\"]]?: (\n failure: Extract<TFailure, { _tag: K }>\n ) => TReturn;\n }\n : Record<never, never>);\n\nexport class EffectQueryFailure<\n TFailure extends { _tag: string } | never = never,\n> extends Error {\n readonly _tag: typeof EffectQueryFailureTag;\n readonly failure: TFailure;\n readonly failureCause: Cause.Cause<TFailure>;\n constructor(\n message: string,\n failure: TFailure,\n cause: Cause.Cause<TFailure>\n ) {\n super(message);\n this._tag = EffectQueryFailureTag;\n this.failure = failure;\n this.failureCause = cause;\n }\n\n match<TReturn>(\n matcher: EffectQueryErrorMatcher<\n TFailure extends { _tag: string } ? TFailure : never,\n TReturn\n >\n ): TReturn {\n if (\n this.failure &&\n typeof this.failure === \"object\" &&\n \"_tag\" in this.failure\n ) {\n const tag = this.failure._tag;\n // biome-ignore lint/suspicious/noExplicitAny: Dynamic tag matching requires any\n const handler = (matcher as any)[tag];\n if (typeof handler === \"function\") {\n return handler(this.failure);\n }\n }\n return matcher.OrElse(this.failureCause);\n }\n}\n\nexport class EffectQueryDefect<TDefect> extends Error {\n readonly _tag: typeof EffectQueryDefectTag;\n readonly defectCause: Cause.Cause<TDefect>;\n constructor(message: string, defect: TDefect) {\n super(message);\n this._tag = EffectQueryDefectTag;\n this.defectCause = Cause.die(defect);\n }\n\n match<TReturn>(\n matcher: EffectQueryErrorMatcher<never, TReturn> & Record<string, unknown>\n ): TReturn {\n return matcher.OrElse(this.defectCause);\n }\n}\n","import {\n type DefinedInitialDataInfiniteOptions,\n type InfiniteData,\n infiniteQueryOptions,\n type QueryFunctionContext,\n type SkipToken,\n type UndefinedInitialDataInfiniteOptions,\n type UnusedSkipTokenInfiniteOptions,\n type UseInfiniteQueryOptions,\n} from \"@tanstack/react-query\";\nimport { Cause, type Effect, Exit } from \"effect\";\nimport type { ManagedRuntime } from \"effect/ManagedRuntime\";\nimport { EffectQueryDefect, EffectQueryFailure } from \"./errors\";\nimport type { EffectQueryRunner } from \"./runner\";\nimport type { EffectQueryQueryKey } from \"./types\";\n\ntype EffectInfiniteQueryQueryFn<\n TFnResult,\n TFnErrorResult,\n TFnRequirements,\n TQueryKey extends EffectQueryQueryKey = EffectQueryQueryKey,\n TPageParam = never,\n> = (\n context: QueryFunctionContext<TQueryKey, TPageParam>\n) => Effect.Effect<TFnResult, TFnErrorResult, TFnRequirements>;\n\ntype EffectInfiniteQueryUndefinedInitialDataOptions<\n TQueryFnData,\n TError,\n TData = InfiniteData<TQueryFnData, unknown>,\n TQueryKey extends EffectQueryQueryKey = EffectQueryQueryKey,\n> = UndefinedInitialDataInfiniteOptions<TQueryFnData, TError, TData, TQueryKey>;\n\ntype EffectInfiniteQueryUnusedSkipTokenOptions<\n TQueryFnData,\n TError,\n TData = InfiniteData<TQueryFnData, unknown>,\n TQueryKey extends EffectQueryQueryKey = EffectQueryQueryKey,\n> = UnusedSkipTokenInfiniteOptions<TQueryFnData, TError, TData, TQueryKey>;\n\ntype EffectInfiniteQueryDefinedInitialDataOptions<\n TQueryFnData,\n TError,\n TData = InfiniteData<TQueryFnData, unknown>,\n TQueryKey extends EffectQueryQueryKey = EffectQueryQueryKey,\n> = DefinedInitialDataInfiniteOptions<TQueryFnData, TError, TData, TQueryKey>;\n\nexport type EffectInfiniteQueryOptionsInput<\n TFnResult,\n TFnErrorResult,\n TFnRequirements,\n TQueryKey extends EffectQueryQueryKey = EffectQueryQueryKey,\n> = Omit<\n | EffectInfiniteQueryUndefinedInitialDataOptions<\n TFnResult,\n TFnErrorResult,\n TFnResult,\n TQueryKey\n >\n | EffectInfiniteQueryDefinedInitialDataOptions<\n TFnResult,\n TFnErrorResult,\n TFnResult,\n TQueryKey\n >\n | EffectInfiniteQueryUnusedSkipTokenOptions<\n TFnResult,\n TFnErrorResult,\n TFnResult,\n TQueryKey\n >,\n \"queryFn\" | \"queryKey\"\n> & {\n queryKey: EffectQueryQueryKey;\n queryFn: EffectInfiniteQueryQueryFn<\n TFnResult,\n TFnErrorResult,\n TFnRequirements,\n EffectQueryQueryKey\n >;\n};\n\n/**\n * @internal\n */\nexport function effectInfiniteQueryOptions<\n // biome-ignore lint/suspicious/noExplicitAny: generic\n TManagedRuntime extends ManagedRuntime<any, never>,\n TFnResult,\n TFnErrorResult extends { _tag: string },\n TFnRequirements,\n>(\n inputOptions: EffectInfiniteQueryOptionsInput<\n TFnResult,\n TFnErrorResult,\n TFnRequirements\n >,\n context: {\n runner: EffectQueryRunner<TManagedRuntime>;\n signal?: AbortSignal;\n }\n) {\n const [spanName] = inputOptions.queryKey;\n\n const queryFn: Exclude<\n UseInfiniteQueryOptions<\n TFnResult,\n TFnErrorResult,\n InfiniteData<TFnResult, unknown>,\n EffectQueryQueryKey,\n unknown\n >[\"queryFn\"],\n SkipToken | undefined\n > = async (queryFnContext) => {\n const effect = inputOptions.queryFn(queryFnContext);\n const result = await context.runner.run(effect, spanName, {\n signal: context.signal,\n });\n return Exit.match(result, {\n onSuccess: (value) => value,\n onFailure: (cause) => {\n if (cause._tag === \"Fail\") {\n const failure = cause.error;\n throw new EffectQueryFailure(Cause.pretty(cause), failure, cause);\n }\n throw new EffectQueryDefect(Cause.pretty(cause), cause);\n },\n });\n };\n\n // The as UseQueryOptions is a workaround to set the correct error type. React Query has no way to infer the error type from the Effect.\n return infiniteQueryOptions({\n ...inputOptions,\n queryKey: inputOptions.queryKey as EffectQueryQueryKey,\n queryFn,\n }) as UseInfiniteQueryOptions<\n TFnResult,\n [TFnErrorResult] extends [never]\n ? EffectQueryDefect<unknown>\n : EffectQueryFailure<TFnErrorResult> | EffectQueryDefect<unknown>,\n TFnResult,\n EffectQueryQueryKey\n >;\n}\n","import {\n type MutationFunction,\n mutationOptions,\n type skipToken,\n type UseMutationOptions,\n} from \"@tanstack/react-query\";\nimport { Cause, type Effect, Exit } from \"effect\";\nimport type { ManagedRuntime } from \"effect/ManagedRuntime\";\nimport { EffectQueryDefect, EffectQueryFailure } from \"./errors\";\nimport type { EffectQueryRunner } from \"./runner\";\n\ntype EffectfulMutationFunction<\n TFnResult,\n TFnErrorResult,\n TFnRequirements,\n TVariables,\n> = (\n variables: TVariables\n) => Effect.Effect<TFnResult, TFnErrorResult, TFnRequirements>;\n\nexport type EffectQueryMutationOptionsInput<\n TFnResult,\n TFnErrorResult,\n TFnRequirements,\n TVariables,\n> = Omit<\n UseMutationOptions<TFnResult, TFnErrorResult, TVariables>,\n \"mutationKey\" | \"mutationFn\"\n> & {\n mutationKey: string;\n mutationFn:\n | EffectfulMutationFunction<\n TFnResult,\n TFnErrorResult,\n TFnRequirements,\n TVariables\n >\n | typeof skipToken;\n};\n\n/**\n * @internal\n */\nexport function effectQueryMutationOptions<\n // biome-ignore lint/suspicious/noExplicitAny: generic\n TManagedRuntime extends ManagedRuntime<any, never>,\n TFnResult,\n TFnErrorResult extends { _tag: string },\n TFnRequirements,\n TVariables,\n>(\n inputOptions: EffectQueryMutationOptionsInput<\n TFnResult,\n TFnErrorResult,\n TFnRequirements,\n TVariables\n >,\n context: {\n runner: EffectQueryRunner<TManagedRuntime>;\n }\n) {\n const spanName = inputOptions.mutationKey;\n const mutationFn: MutationFunction<TFnResult, TVariables> = async (\n variables: TVariables\n ) => {\n const effect = (\n inputOptions.mutationFn as EffectfulMutationFunction<\n TFnResult,\n TFnErrorResult,\n TFnRequirements,\n TVariables\n >\n )(variables);\n const result = await context.runner.run(effect, spanName);\n return Exit.match(result, {\n onSuccess: (value) => value,\n onFailure: (cause) => {\n if (cause._tag === \"Fail\") {\n const failure = cause.error;\n throw new EffectQueryFailure(Cause.pretty(cause), failure, cause);\n }\n throw new EffectQueryDefect(Cause.pretty(cause), cause);\n },\n });\n };\n\n return mutationOptions({\n ...inputOptions,\n mutationFn,\n }) as UseMutationOptions<\n TFnResult,\n [TFnErrorResult] extends [never]\n ? never\n : EffectQueryFailure<TFnErrorResult> | EffectQueryDefect<unknown>,\n TVariables\n >;\n}\n","import {\n type DefinedInitialDataOptions,\n type QueryFunction,\n type QueryFunctionContext,\n queryOptions,\n type UndefinedInitialDataOptions,\n type UnusedSkipTokenOptions,\n type UseQueryOptions,\n} from \"@tanstack/react-query\";\nimport { Cause, type Effect, Exit } from \"effect\";\nimport type { ManagedRuntime } from \"effect/ManagedRuntime\";\nimport { EffectQueryDefect, EffectQueryFailure } from \"./errors\";\nimport type { EffectQueryRunner } from \"./runner\";\nimport type { EffectQueryQueryKey } from \"./types\";\n\ntype EffectQueryQueryFn<\n TFnResult,\n TFnErrorResult,\n TFnRequirements,\n TQueryKey extends EffectQueryQueryKey = EffectQueryQueryKey,\n TPageParam = never,\n> = (\n context: QueryFunctionContext<TQueryKey, TPageParam>\n) => Effect.Effect<TFnResult, TFnErrorResult, TFnRequirements>;\n\ntype EffectQueryUndefinedInitialDataOptions<\n TQueryFnData,\n TError,\n TData = TQueryFnData,\n TQueryKey extends EffectQueryQueryKey = EffectQueryQueryKey,\n> = UndefinedInitialDataOptions<TQueryFnData, TError, TData, TQueryKey>;\n\ntype EffectQueryUnusedSkipTokenOptions<\n TQueryFnData,\n TError,\n TData = TQueryFnData,\n TQueryKey extends EffectQueryQueryKey = EffectQueryQueryKey,\n> = UnusedSkipTokenOptions<TQueryFnData, TError, TData, TQueryKey>;\n\ntype EffectQueryDefinedInitialDataOptions<\n TQueryFnData,\n TError,\n TData = TQueryFnData,\n TQueryKey extends EffectQueryQueryKey = EffectQueryQueryKey,\n> = DefinedInitialDataOptions<TQueryFnData, TError, TData, TQueryKey>;\n\nexport type EffectQueryOptionsInput<\n TFnResult,\n TFnErrorResult,\n TFnRequirements,\n TQueryKey extends EffectQueryQueryKey = EffectQueryQueryKey,\n> = Omit<\n | EffectQueryUndefinedInitialDataOptions<\n TFnResult,\n TFnErrorResult,\n TFnResult,\n TQueryKey\n >\n | EffectQueryDefinedInitialDataOptions<\n TFnResult,\n TFnErrorResult,\n TFnResult,\n TQueryKey\n >\n | EffectQueryUnusedSkipTokenOptions<\n TFnResult,\n TFnErrorResult,\n TFnResult,\n TQueryKey\n >,\n \"queryFn\" | \"queryKey\"\n> & {\n queryKey: EffectQueryQueryKey;\n queryFn: EffectQueryQueryFn<\n TFnResult,\n TFnErrorResult,\n TFnRequirements,\n EffectQueryQueryKey\n >;\n};\n\n/**\n * @internal\n */\nexport function effectQueryQueryOptions<\n // biome-ignore lint/suspicious/noExplicitAny: generic\n TManagedRuntime extends ManagedRuntime<any, never>,\n TFnResult,\n TFnErrorResult extends { _tag: string },\n TFnRequirements,\n>(\n inputOptions: EffectQueryOptionsInput<\n TFnResult,\n TFnErrorResult,\n TFnRequirements\n >,\n context: {\n runner: EffectQueryRunner<TManagedRuntime>;\n signal?: AbortSignal;\n }\n) {\n const [spanName] = inputOptions.queryKey;\n\n const queryFn: QueryFunction<TFnResult, EffectQueryQueryKey> = async (\n queryFnContext\n ) => {\n const effect = inputOptions.queryFn(queryFnContext);\n const result = await context.runner.run(effect, spanName, {\n signal: context.signal,\n });\n return Exit.match(result, {\n onSuccess: (value) => value,\n onFailure: (cause) => {\n if (cause._tag === \"Fail\") {\n const failure = cause.error;\n throw new EffectQueryFailure(Cause.pretty(cause), failure, cause);\n }\n throw new EffectQueryDefect(Cause.pretty(cause), cause);\n },\n });\n };\n\n // The as UseQueryOptions is a workaround to set the correct error type. React Query has no way to infer the error type from the Effect.\n return queryOptions({\n ...inputOptions,\n queryKey: inputOptions.queryKey,\n queryFn,\n }) as UseQueryOptions<\n TFnResult,\n [TFnErrorResult] extends [never]\n ? EffectQueryDefect<unknown>\n : EffectQueryFailure<TFnErrorResult> | EffectQueryDefect<unknown>,\n TFnResult,\n EffectQueryQueryKey\n >;\n}\n","import { Effect, type Exit } from \"effect\";\nimport type { ManagedRuntime } from \"effect/ManagedRuntime\";\n\nexport class EffectQueryRunner<\n // biome-ignore lint/suspicious/noExplicitAny: generic\n TManagedRuntime extends ManagedRuntime<any, never>,\n> {\n readonly runtime: TManagedRuntime;\n constructor(runtime: TManagedRuntime) {\n this.runtime = runtime;\n }\n\n async run<TResult, TError, TRequirements>(\n effect: Effect.Effect<TResult, TError, TRequirements>,\n span: string,\n options: { signal?: AbortSignal } = {}\n ): Promise<Exit.Exit<TResult, TError>> {\n const runnable = Effect.scoped(\n effect.pipe(Effect.withSpan(span), Effect.tapErrorCause(Effect.logError))\n );\n return await this.runtime.runPromiseExit(runnable, {\n signal: options.signal,\n });\n }\n}\n","import { type Layer, ManagedRuntime } from \"effect\";\nimport {\n type EffectInfiniteQueryOptionsInput,\n effectInfiniteQueryOptions,\n} from \"./infiniteQueryOptions\";\nimport {\n type EffectQueryMutationOptionsInput,\n effectQueryMutationOptions,\n} from \"./mutationOptions\";\nimport {\n type EffectQueryOptionsInput,\n effectQueryQueryOptions,\n} from \"./queryOptions\";\nimport { EffectQueryRunner } from \"./runner\";\n\nexport function createEffectQuery<Input>(\n layer: Layer.Layer<Input, never, never>\n) {\n const runtime = ManagedRuntime.make(layer);\n const runner = new EffectQueryRunner(runtime);\n\n return {\n queryOptions: <\n TFnResult,\n TFnErrorResult extends { _tag: string },\n TFnRequirements,\n >(\n options: EffectQueryOptionsInput<\n TFnResult,\n TFnErrorResult,\n TFnRequirements\n >\n ) =>\n effectQueryQueryOptions<\n typeof runtime,\n TFnResult,\n TFnErrorResult,\n TFnRequirements\n >(\n {\n queryKey: options.queryKey,\n queryFn: options.queryFn,\n },\n {\n runner,\n }\n ),\n infiniteQueryOptions: <\n TFnResult,\n TFnErrorResult extends { _tag: string },\n TFnRequirements,\n >(\n options: EffectInfiniteQueryOptionsInput<\n TFnResult,\n TFnErrorResult,\n TFnRequirements\n >\n ) =>\n effectInfiniteQueryOptions<\n typeof runtime,\n TFnResult,\n TFnErrorResult,\n TFnRequirements\n >(options, { runner }),\n mutationOptions: <\n TFnResult,\n TFnErrorResult extends { _tag: string },\n TFnRequirements,\n TVariables,\n >(\n options: EffectQueryMutationOptionsInput<\n TFnResult,\n TFnErrorResult,\n TFnRequirements,\n TVariables\n >\n ) =>\n effectQueryMutationOptions<\n typeof runtime,\n TFnResult,\n TFnErrorResult,\n TFnRequirements,\n TVariables\n >(options, { runner }),\n };\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.mjs","names":["queryFn: Exclude<\n UseInfiniteQueryOptions<\n TFnResult,\n TFnErrorResult,\n InfiniteData<TFnResult, unknown>,\n EffectQueryQueryKey,\n unknown\n >[\"queryFn\"],\n SkipToken | undefined\n >","mutationFn: MutationFunction<TFnResult, TVariables>","queryFn: QueryFunction<TFnResult, EffectQueryQueryKey>","this"],"sources":["../src/errors.ts","../src/infiniteQueryOptions.ts","../src/mutationOptions.ts","../src/queryOptions.ts","../src/runner.ts","../src/index.ts"],"sourcesContent":["import { Cause } from \"effect\";\n\nconst EffectQueryFailureTag = \"EffectQueryFailure\" as const;\nconst EffectQueryDefectTag = \"EffectQueryDefect\" as const;\n\ntype EffectQueryErrorMatcher<\n TFailure extends { _tag: string } | never = never,\n TReturn = unknown,\n> = {\n OrElse: (cause: Cause.Cause<unknown>) => TReturn;\n} & ([TFailure] extends [never]\n ? Record<never, never>\n : TFailure extends { _tag: string }\n ? {\n [K in TFailure[\"_tag\"]]?: (\n failure: Extract<TFailure, { _tag: K }>\n ) => TReturn;\n }\n : Record<never, never>);\n\nexport class EffectQueryFailure<\n TFailure extends { _tag: string } | never = never,\n> extends Error {\n readonly _tag: typeof EffectQueryFailureTag;\n readonly failure: TFailure;\n readonly failureCause: Cause.Cause<TFailure>;\n constructor(\n message: string,\n failure: TFailure,\n cause: Cause.Cause<TFailure>\n ) {\n super(message);\n this._tag = EffectQueryFailureTag;\n this.failure = failure;\n this.failureCause = cause;\n }\n\n match<TReturn>(\n matcher: EffectQueryErrorMatcher<\n TFailure extends { _tag: string } ? TFailure : never,\n TReturn\n >\n ): TReturn {\n if (\n this.failure &&\n typeof this.failure === \"object\" &&\n \"_tag\" in this.failure\n ) {\n const tag = this.failure._tag;\n // biome-ignore lint/suspicious/noExplicitAny: Dynamic tag matching requires any\n const handler = (matcher as any)[tag];\n if (typeof handler === \"function\") {\n return handler(this.failure);\n }\n }\n return matcher.OrElse(this.failureCause);\n }\n}\n\nexport class EffectQueryDefect<TDefect> extends Error {\n readonly _tag: typeof EffectQueryDefectTag;\n readonly defectCause: Cause.Cause<TDefect>;\n constructor(message: string, defect: TDefect) {\n super(message);\n this._tag = EffectQueryDefectTag;\n this.defectCause = Cause.die(defect);\n }\n\n match<TReturn>(\n matcher: EffectQueryErrorMatcher<never, TReturn> & Record<string, unknown>\n ): TReturn {\n return matcher.OrElse(this.defectCause);\n }\n}\n","import {\n type DefinedInitialDataInfiniteOptions,\n type InfiniteData,\n infiniteQueryOptions,\n type QueryFunctionContext,\n type SkipToken,\n type UndefinedInitialDataInfiniteOptions,\n type UnusedSkipTokenInfiniteOptions,\n type UseInfiniteQueryOptions,\n} from \"@tanstack/react-query\";\nimport { Cause, type Effect, Exit } from \"effect\";\nimport type { ManagedRuntime } from \"effect/ManagedRuntime\";\nimport { EffectQueryDefect, EffectQueryFailure } from \"./errors\";\nimport type { EffectQueryRunner } from \"./runner\";\nimport type { EffectQueryQueryKey } from \"./types\";\n\ntype EffectInfiniteQueryQueryFn<\n TFnResult,\n TFnErrorResult,\n TFnRequirements,\n TQueryKey extends EffectQueryQueryKey = EffectQueryQueryKey,\n TPageParam = never,\n> = (\n context: QueryFunctionContext<TQueryKey, TPageParam>\n) => Effect.Effect<TFnResult, TFnErrorResult, TFnRequirements>;\n\ntype EffectInfiniteQueryUndefinedInitialDataOptions<\n TQueryFnData,\n TError,\n TData = InfiniteData<TQueryFnData, unknown>,\n TQueryKey extends EffectQueryQueryKey = EffectQueryQueryKey,\n> = UndefinedInitialDataInfiniteOptions<TQueryFnData, TError, TData, TQueryKey>;\n\ntype EffectInfiniteQueryUnusedSkipTokenOptions<\n TQueryFnData,\n TError,\n TData = InfiniteData<TQueryFnData, unknown>,\n TQueryKey extends EffectQueryQueryKey = EffectQueryQueryKey,\n> = UnusedSkipTokenInfiniteOptions<TQueryFnData, TError, TData, TQueryKey>;\n\ntype EffectInfiniteQueryDefinedInitialDataOptions<\n TQueryFnData,\n TError,\n TData = InfiniteData<TQueryFnData, unknown>,\n TQueryKey extends EffectQueryQueryKey = EffectQueryQueryKey,\n> = DefinedInitialDataInfiniteOptions<TQueryFnData, TError, TData, TQueryKey>;\n\nexport type EffectInfiniteQueryOptionsInput<\n TFnResult,\n TFnErrorResult,\n TFnRequirements,\n TQueryKey extends EffectQueryQueryKey = EffectQueryQueryKey,\n> = Omit<\n | EffectInfiniteQueryUndefinedInitialDataOptions<\n TFnResult,\n TFnErrorResult,\n TFnResult,\n TQueryKey\n >\n | EffectInfiniteQueryDefinedInitialDataOptions<\n TFnResult,\n TFnErrorResult,\n TFnResult,\n TQueryKey\n >\n | EffectInfiniteQueryUnusedSkipTokenOptions<\n TFnResult,\n TFnErrorResult,\n TFnResult,\n TQueryKey\n >,\n \"queryFn\" | \"queryKey\"\n> & {\n queryKey: EffectQueryQueryKey;\n queryFn: EffectInfiniteQueryQueryFn<\n TFnResult,\n TFnErrorResult,\n TFnRequirements,\n EffectQueryQueryKey\n >;\n};\n\n/**\n * @internal\n */\nexport function effectInfiniteQueryOptions<\n // biome-ignore lint/suspicious/noExplicitAny: generic\n TManagedRuntime extends ManagedRuntime<any, never>,\n TFnResult,\n TFnErrorResult extends { _tag: string },\n TFnRequirements,\n>(\n inputOptions: EffectInfiniteQueryOptionsInput<\n TFnResult,\n TFnErrorResult,\n TFnRequirements\n >,\n context: {\n runner: EffectQueryRunner<TManagedRuntime>;\n signal?: AbortSignal;\n }\n) {\n const [spanName] = inputOptions.queryKey;\n\n const queryFn: Exclude<\n UseInfiniteQueryOptions<\n TFnResult,\n TFnErrorResult,\n InfiniteData<TFnResult, unknown>,\n EffectQueryQueryKey,\n unknown\n >[\"queryFn\"],\n SkipToken | undefined\n > = async (queryFnContext) => {\n const effect = inputOptions.queryFn(queryFnContext);\n const result = await context.runner.run(effect, spanName, {\n signal: context.signal,\n });\n return Exit.match(result, {\n onSuccess: (value) => value,\n onFailure: (cause) => {\n if (cause._tag === \"Fail\") {\n const failure = cause.error;\n throw new EffectQueryFailure(Cause.pretty(cause), failure, cause);\n }\n throw new EffectQueryDefect(Cause.pretty(cause), cause);\n },\n });\n };\n\n // The as UseQueryOptions is a workaround to set the correct error type. React Query has no way to infer the error type from the Effect.\n return infiniteQueryOptions({\n ...inputOptions,\n queryKey: inputOptions.queryKey as EffectQueryQueryKey,\n queryFn,\n }) as UseInfiniteQueryOptions<\n TFnResult,\n [TFnErrorResult] extends [never]\n ? EffectQueryDefect<unknown>\n : EffectQueryFailure<TFnErrorResult> | EffectQueryDefect<unknown>,\n TFnResult,\n EffectQueryQueryKey\n >;\n}\n","import {\n type MutationFunction,\n mutationOptions,\n type skipToken,\n type UseMutationOptions,\n} from \"@tanstack/react-query\";\nimport { Cause, type Effect, Exit } from \"effect\";\nimport type { ManagedRuntime } from \"effect/ManagedRuntime\";\nimport { EffectQueryDefect, EffectQueryFailure } from \"./errors\";\nimport type { EffectQueryRunner } from \"./runner\";\n\ntype EffectfulMutationFunction<\n TFnResult,\n TFnErrorResult,\n TFnRequirements,\n TVariables,\n> = (\n variables: TVariables\n) => Effect.Effect<TFnResult, TFnErrorResult, TFnRequirements>;\n\nexport type EffectQueryMutationOptionsInput<\n TFnResult,\n TFnErrorResult,\n TFnRequirements,\n TVariables,\n> = Omit<\n UseMutationOptions<TFnResult, TFnErrorResult, TVariables>,\n \"mutationKey\" | \"mutationFn\"\n> & {\n mutationKey: string;\n mutationFn:\n | EffectfulMutationFunction<\n TFnResult,\n TFnErrorResult,\n TFnRequirements,\n TVariables\n >\n | typeof skipToken;\n};\n\n/**\n * @internal\n */\nexport function effectQueryMutationOptions<\n // biome-ignore lint/suspicious/noExplicitAny: generic\n TManagedRuntime extends ManagedRuntime<any, never>,\n TFnResult,\n TFnErrorResult extends { _tag: string },\n TFnRequirements,\n TVariables,\n>(\n inputOptions: EffectQueryMutationOptionsInput<\n TFnResult,\n TFnErrorResult,\n TFnRequirements,\n TVariables\n >,\n context: {\n runner: EffectQueryRunner<TManagedRuntime>;\n }\n) {\n const spanName = inputOptions.mutationKey;\n const mutationFn: MutationFunction<TFnResult, TVariables> = async (\n variables: TVariables\n ) => {\n const effect = (\n inputOptions.mutationFn as EffectfulMutationFunction<\n TFnResult,\n TFnErrorResult,\n TFnRequirements,\n TVariables\n >\n )(variables);\n const result = await context.runner.run(effect, spanName);\n return Exit.match(result, {\n onSuccess: (value) => value,\n onFailure: (cause) => {\n if (cause._tag === \"Fail\") {\n const failure = cause.error;\n throw new EffectQueryFailure(Cause.pretty(cause), failure, cause);\n }\n throw new EffectQueryDefect(Cause.pretty(cause), cause);\n },\n });\n };\n\n return mutationOptions({\n ...inputOptions,\n mutationFn,\n }) as UseMutationOptions<\n TFnResult,\n [TFnErrorResult] extends [never]\n ? never\n : EffectQueryFailure<TFnErrorResult> | EffectQueryDefect<unknown>,\n TVariables\n >;\n}\n","import {\n type DefinedInitialDataOptions,\n type QueryFunction,\n type QueryFunctionContext,\n queryOptions,\n type UndefinedInitialDataOptions,\n type UnusedSkipTokenOptions,\n type UseQueryOptions,\n} from \"@tanstack/react-query\";\nimport { Cause, type Effect, Exit } from \"effect\";\nimport type { ManagedRuntime } from \"effect/ManagedRuntime\";\nimport { EffectQueryDefect, EffectQueryFailure } from \"./errors\";\nimport type { EffectQueryRunner } from \"./runner\";\nimport type { EffectQueryQueryKey } from \"./types\";\n\ntype EffectQueryQueryFn<\n TFnResult,\n TFnErrorResult,\n TFnRequirements,\n TQueryKey extends EffectQueryQueryKey = EffectQueryQueryKey,\n TPageParam = never,\n> = (\n context: QueryFunctionContext<TQueryKey, TPageParam>\n) => Effect.Effect<TFnResult, TFnErrorResult, TFnRequirements>;\n\ntype EffectQueryUndefinedInitialDataOptions<\n TQueryFnData,\n TError,\n TData = TQueryFnData,\n TQueryKey extends EffectQueryQueryKey = EffectQueryQueryKey,\n> = UndefinedInitialDataOptions<TQueryFnData, TError, TData, TQueryKey>;\n\ntype EffectQueryUnusedSkipTokenOptions<\n TQueryFnData,\n TError,\n TData = TQueryFnData,\n TQueryKey extends EffectQueryQueryKey = EffectQueryQueryKey,\n> = UnusedSkipTokenOptions<TQueryFnData, TError, TData, TQueryKey>;\n\ntype EffectQueryDefinedInitialDataOptions<\n TQueryFnData,\n TError,\n TData = TQueryFnData,\n TQueryKey extends EffectQueryQueryKey = EffectQueryQueryKey,\n> = DefinedInitialDataOptions<TQueryFnData, TError, TData, TQueryKey>;\n\nexport type EffectQueryOptionsInput<\n TFnResult,\n TFnErrorResult,\n TFnRequirements,\n TQueryKey extends EffectQueryQueryKey = EffectQueryQueryKey,\n> = Omit<\n | EffectQueryUndefinedInitialDataOptions<\n TFnResult,\n TFnErrorResult,\n TFnResult,\n TQueryKey\n >\n | EffectQueryDefinedInitialDataOptions<\n TFnResult,\n TFnErrorResult,\n TFnResult,\n TQueryKey\n >\n | EffectQueryUnusedSkipTokenOptions<\n TFnResult,\n TFnErrorResult,\n TFnResult,\n TQueryKey\n >,\n \"queryFn\" | \"queryKey\"\n> & {\n queryKey: EffectQueryQueryKey;\n queryFn: EffectQueryQueryFn<\n TFnResult,\n TFnErrorResult,\n TFnRequirements,\n EffectQueryQueryKey\n >;\n};\n\n/**\n * @internal\n */\nexport function effectQueryQueryOptions<\n // biome-ignore lint/suspicious/noExplicitAny: generic\n TManagedRuntime extends ManagedRuntime<any, never>,\n TFnResult,\n TFnErrorResult extends { _tag: string },\n TFnRequirements,\n>(\n inputOptions: EffectQueryOptionsInput<\n TFnResult,\n TFnErrorResult,\n TFnRequirements\n >,\n context: {\n runner: EffectQueryRunner<TManagedRuntime>;\n signal?: AbortSignal;\n }\n) {\n const [spanName] = inputOptions.queryKey;\n\n const queryFn: QueryFunction<TFnResult, EffectQueryQueryKey> = async (\n queryFnContext\n ) => {\n const effect = inputOptions.queryFn(queryFnContext);\n const result = await context.runner.run(effect, spanName, {\n signal: context.signal,\n });\n return Exit.match(result, {\n onSuccess: (value) => value,\n onFailure: (cause) => {\n if (cause._tag === \"Fail\") {\n const failure = cause.error;\n throw new EffectQueryFailure(Cause.pretty(cause), failure, cause);\n }\n throw new EffectQueryDefect(Cause.pretty(cause), cause);\n },\n });\n };\n\n // The as UseQueryOptions is a workaround to set the correct error type. React Query has no way to infer the error type from the Effect.\n return queryOptions({\n ...inputOptions,\n queryKey: inputOptions.queryKey,\n queryFn,\n }) as UseQueryOptions<\n TFnResult,\n [TFnErrorResult] extends [never]\n ? EffectQueryDefect<unknown>\n : EffectQueryFailure<TFnErrorResult> | EffectQueryDefect<unknown>,\n TFnResult,\n EffectQueryQueryKey\n >;\n}\n","import { Effect, type Exit } from \"effect\";\nimport type { ManagedRuntime } from \"effect/ManagedRuntime\";\n\nexport class EffectQueryRunner<\n // biome-ignore lint/suspicious/noExplicitAny: generic\n TManagedRuntime extends ManagedRuntime<any, never>,\n> {\n readonly runtime: TManagedRuntime;\n constructor(runtime: TManagedRuntime) {\n this.runtime = runtime;\n }\n\n async run<TResult, TError, TRequirements>(\n effect: Effect.Effect<TResult, TError, TRequirements>,\n span: string,\n options: { signal?: AbortSignal } = {}\n ): Promise<Exit.Exit<TResult, TError>> {\n const runnable = Effect.scoped(\n effect.pipe(Effect.withSpan(span), Effect.tapErrorCause(Effect.logError))\n );\n return await this.runtime.runPromiseExit(runnable, {\n signal: options.signal,\n });\n }\n}\n","import { type Layer, ManagedRuntime } from \"effect\";\nimport {\n type EffectInfiniteQueryOptionsInput,\n effectInfiniteQueryOptions,\n} from \"./infiniteQueryOptions\";\nimport {\n type EffectQueryMutationOptionsInput,\n effectQueryMutationOptions,\n} from \"./mutationOptions\";\nimport {\n type EffectQueryOptionsInput,\n effectQueryQueryOptions,\n} from \"./queryOptions\";\nimport { EffectQueryRunner } from \"./runner\";\n\nexport function createEffectQuery<Input>(\n layer: Layer.Layer<Input, never, never>\n) {\n const runtime = ManagedRuntime.make(layer);\n return createEffectQueryFromManagedRuntime(runtime);\n}\n\nexport function createEffectQueryFromManagedRuntime<Input>(\n runtime: ManagedRuntime.ManagedRuntime<Input, never>\n) {\n const runner = new EffectQueryRunner(runtime);\n\n return {\n queryOptions: <\n TFnResult,\n TFnErrorResult extends { _tag: string },\n TFnRequirements,\n >(\n options: EffectQueryOptionsInput<\n TFnResult,\n TFnErrorResult,\n TFnRequirements\n >\n ) =>\n effectQueryQueryOptions<\n typeof runtime,\n TFnResult,\n TFnErrorResult,\n TFnRequirements\n >(\n {\n queryKey: options.queryKey,\n queryFn: options.queryFn,\n },\n {\n runner,\n }\n ),\n infiniteQueryOptions: <\n TFnResult,\n TFnErrorResult extends { _tag: string },\n TFnRequirements,\n >(\n options: EffectInfiniteQueryOptionsInput<\n TFnResult,\n TFnErrorResult,\n TFnRequirements\n >\n ) =>\n effectInfiniteQueryOptions<\n typeof runtime,\n TFnResult,\n TFnErrorResult,\n TFnRequirements\n >(options, { runner }),\n mutationOptions: <\n TFnResult,\n TFnErrorResult extends { _tag: string },\n TFnRequirements,\n TVariables,\n >(\n options: EffectQueryMutationOptionsInput<\n TFnResult,\n TFnErrorResult,\n TFnRequirements,\n TVariables\n >\n ) =>\n effectQueryMutationOptions<\n typeof runtime,\n TFnResult,\n TFnErrorResult,\n TFnRequirements,\n TVariables\n >(options, { runner }),\n };\n}\n"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "effect-query",
3
- "version": "0.1.1",
3
+ "version": "0.1.2-beta.1",
4
4
  "description": "Effect adapter for Tanstack Query",
5
5
  "repository": {
6
6
  "type": "git",