@effect-app/vue 1.9.3 → 1.9.5
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 +16 -0
- package/_cjs/query.cjs +21 -0
- package/_cjs/query.cjs.map +1 -1
- package/dist/query.d.ts +2 -3
- package/dist/query.d.ts.map +1 -1
- package/dist/query.js +23 -2
- package/package.json +3 -3
- package/src/query.ts +24 -3
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,21 @@
|
|
|
1
1
|
# @effect-app/vue
|
|
2
2
|
|
|
3
|
+
## 1.9.5
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- eca5b49: fix retrycount
|
|
8
|
+
- Updated dependencies [eca5b49]
|
|
9
|
+
- @effect-app/vue@1.9.5
|
|
10
|
+
|
|
11
|
+
## 1.9.4
|
|
12
|
+
|
|
13
|
+
### Patch Changes
|
|
14
|
+
|
|
15
|
+
- d907a23: improve: do not retry dead ends
|
|
16
|
+
- Updated dependencies [d907a23]
|
|
17
|
+
- @effect-app/vue@1.9.4
|
|
18
|
+
|
|
3
19
|
## 1.9.3
|
|
4
20
|
|
|
5
21
|
### Patch Changes
|
package/_cjs/query.cjs
CHANGED
|
@@ -8,6 +8,7 @@ exports.useSafeQuery_ = void 0;
|
|
|
8
8
|
var Result = _interopRequireWildcard(require("@effect-rx/rx/Result"));
|
|
9
9
|
var _vueQuery = require("@tanstack/vue-query");
|
|
10
10
|
var _effectApp = require("effect-app");
|
|
11
|
+
var _client = require("effect-app/client");
|
|
11
12
|
var _vue = require("vue");
|
|
12
13
|
var _internal = require("./internal.cjs");
|
|
13
14
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
@@ -60,6 +61,16 @@ const useSafeQuery_ = (q, arg, options = {} // TODO
|
|
|
60
61
|
const handler = q.handler;
|
|
61
62
|
const r = (0, _vueQuery.useQuery)(_effectApp.Effect.isEffect(handler) ? {
|
|
62
63
|
...options,
|
|
64
|
+
retry: (retryCount, error) => {
|
|
65
|
+
if (_effectApp.Runtime.isFiberFailure(error)) {
|
|
66
|
+
const cause = error[_effectApp.Runtime.FiberFailureCauseId];
|
|
67
|
+
const sq = _effectApp.Cause.squash(cause);
|
|
68
|
+
if (_effectApp.S.is(_client.UnauthorizedError)(sq) || _effectApp.S.is(_client.NotFoundError)(sq)) {
|
|
69
|
+
return false;
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
return retryCount < 6;
|
|
73
|
+
},
|
|
63
74
|
queryKey,
|
|
64
75
|
queryFn: ({
|
|
65
76
|
signal
|
|
@@ -68,6 +79,16 @@ const useSafeQuery_ = (q, arg, options = {} // TODO
|
|
|
68
79
|
})
|
|
69
80
|
} : {
|
|
70
81
|
...options,
|
|
82
|
+
retry: (retryCount, error) => {
|
|
83
|
+
if (_effectApp.Runtime.isFiberFailure(error)) {
|
|
84
|
+
const cause = error[_effectApp.Runtime.FiberFailureCauseId];
|
|
85
|
+
const sq = _effectApp.Cause.squash(cause);
|
|
86
|
+
if (_effectApp.S.is(_client.UnauthorizedError)(sq) || _effectApp.S.is(_client.NotFoundError)(sq)) {
|
|
87
|
+
return false;
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
return retryCount < 6;
|
|
91
|
+
},
|
|
71
92
|
queryKey: [...queryKey, req],
|
|
72
93
|
queryFn: ({
|
|
73
94
|
signal
|
package/_cjs/query.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"query.cjs","names":["Result","_interopRequireWildcard","require","_vueQuery","_effectApp","_vue","_internal","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","useSafeQuery","self","argOrOptions","options","Effect","isEffect","handler","useSafeQuery_","undefined","q","arg","arr","req","value","ref","queryKey","makeQueryKey","name","useQuery","queryFn","signal","run","map","_","body","pipe","tapDefect","reportRuntimeError","withSpan","result","computed","swrToQuery","
|
|
1
|
+
{"version":3,"file":"query.cjs","names":["Result","_interopRequireWildcard","require","_vueQuery","_effectApp","_client","_vue","_internal","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","useSafeQuery","self","argOrOptions","options","Effect","isEffect","handler","useSafeQuery_","undefined","q","arg","arr","req","value","ref","queryKey","makeQueryKey","name","useQuery","retry","retryCount","error","Runtime","isFiberFailure","cause","FiberFailureCauseId","sq","Cause","squash","S","is","UnauthorizedError","NotFoundError","queryFn","signal","run","map","_","body","pipe","tapDefect","reportRuntimeError","withSpan","result","computed","swrToQuery","data","isValidating","isFetching","latestSuccess","Option","getOrUndefined","refetch","exports","failureWithPrevious","none","some","success","initial"],"sources":["../src/query.ts"],"sourcesContent":[null],"mappings":";;;;;;;AAIA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AAQA,IAAAC,SAAA,GAAAD,OAAA;AACA,IAAAE,UAAA,GAAAF,OAAA;AACA,IAAAG,OAAA,GAAAH,OAAA;AAEA,IAAAI,IAAA,GAAAJ,OAAA;AAEA,IAAAK,SAAA,GAAAL,OAAA;AAAqE,SAAAM,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAR,wBAAAQ,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA,eAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,WAAAK,OAAA,EAAAL,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA,OAAAQ,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,OAAAC,cAAA,CAAAC,IAAA,CAAAhB,CAAA,EAAAc,CAAA,SAAAG,CAAA,GAAAP,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA,UAAAG,CAAA,KAAAA,CAAA,CAAAV,GAAA,IAAAU,CAAA,CAAAC,GAAA,IAAAP,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAG,CAAA,IAAAT,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA,YAAAN,CAAA,CAAAH,OAAA,GAAAL,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAe,GAAA,CAAAlB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAlBrE;AACA;AACA;AACA;;AAuDM,SAAUW,YAAYA,CAC1BC,IAAS;AACT;;;;;;;;;;;;;;;;;;;;;;;AAuBAC,YAAkB,EAClBC,OAAa;EAEb,OAAOC,iBAAM,CAACC,QAAQ,CAACJ,IAAI,CAACK,OAAO,CAAC,GAChCC,aAAa,CAACN,IAAI,EAAEO,SAAS,EAAEN,YAAY,CAAC,GAC5CK,aAAa,CAACN,IAAI,EAAEC,YAAY,EAAEC,OAAO,CAAC;AAChD;AAMA;AACA;AACA;AACA;AACO,MAAMI,aAAa,GAAGA,CAC3BE,CAoBG,EACHC,GAAwB,EACxBP,OAAA,GAAwE,EAAE,CAAC;AAAA,KACzE;EACF,MAAMQ,GAAG,GAAGD,GAAG;EACf,MAAME,GAAG,GAAiB,CAACF,GAAG,GAC1BF,SAAS,GACT,OAAOG,GAAG,KAAK,UAAU,GACxB;IACD,IAAIE,KAAKA,CAAA;MACP,OAAQF,GAAW,EAAE;IACvB;GACO,GACP,IAAAG,QAAG,EAACJ,GAAG,CAAC;EACZ,MAAMK,QAAQ,GAAG,IAAAC,sBAAY,EAACP,CAAC,CAACQ,IAAI,CAAC;EACrC,MAAMX,OAAO,GAAGG,CAAC,CAACH,OAAO;EACzB,MAAMvB,CAAC,GAAG,IAAAmC,kBAAQ,EAChBd,iBAAM,CAACC,QAAQ,CAACC,OAAO,CAAC,GACpB;IACA,GAAGH,OAAO;IACVgB,KAAK,EAAEA,CAACC,UAAU,EAAEC,KAAK,KAAI;MAC3B,IAAIC,kBAAO,CAACC,cAAc,CAACF,KAAK,CAAC,EAAE;QACjC,MAAMG,KAAK,GAAGH,KAAK,CAACC,kBAAO,CAACG,mBAAmB,CAAC;QAChD,MAAMC,EAAE,GAAGC,gBAAK,CAACC,MAAM,CAACJ,KAAK,CAAC;QAC9B,IAAIK,YAAC,CAACC,EAAE,CAACC,yBAAiB,CAAC,CAACL,EAAE,CAAC,IAAIG,YAAC,CAACC,EAAE,CAACE,qBAAa,CAAC,CAACN,EAAE,CAAC,EAAE;UAC1D,OAAO,KAAK;QACd;MACF;MAEA,OAAON,UAAU,GAAG,CAAC;IACvB,CAAC;IACDL,QAAQ;IACRkB,OAAO,EAAEA,CAAC;MAAEC;IAAM,CAAE,KAClBC,aAAG,CAACtB,KAAK,CACPT,iBAAM,CACHgC,GAAG,CAAC9B,OAAO,EAAG+B,CAAC,IAAKA,CAAC,CAACC,IAAI,CAAC,CAC3BC,IAAI,CAACnC,iBAAM,CAACoC,SAAS,CAACC,4BAAkB,CAAC,EAAErC,iBAAM,CAACsC,QAAQ,CAAC,SAASjC,CAAC,CAACQ,IAAI,EAAE,CAAC,CAAC,EACjF;MAAEiB;IAAM,CAAE;GAEf,GACC;IACA,GAAG/B,OAAO;IACVgB,KAAK,EAAEA,CAACC,UAAU,EAAEC,KAAK,KAAI;MAC3B,IAAIC,kBAAO,CAACC,cAAc,CAACF,KAAK,CAAC,EAAE;QACjC,MAAMG,KAAK,GAAGH,KAAK,CAACC,kBAAO,CAACG,mBAAmB,CAAC;QAChD,MAAMC,EAAE,GAAGC,gBAAK,CAACC,MAAM,CAACJ,KAAK,CAAC;QAC9B,IAAIK,YAAC,CAACC,EAAE,CAACC,yBAAiB,CAAC,CAACL,EAAE,CAAC,IAAIG,YAAC,CAACC,EAAE,CAACE,qBAAa,CAAC,CAACN,EAAE,CAAC,EAAE;UAC1D,OAAO,KAAK;QACd;MACF;MAEA,OAAON,UAAU,GAAG,CAAC;IACvB,CAAC;IACDL,QAAQ,EAAE,CAAC,GAAGA,QAAQ,EAAEH,GAAG,CAAC;IAC5BqB,OAAO,EAAEA,CAAC;MAAEC;IAAM,CAAE,KAClBC,aAAG,CACAtB,KAAK,CACJT,iBAAM,CACHgC,GAAG,CAAC9B,OAAO,CAACM,GAAG,CAACC,KAAK,CAAC,EAAGwB,CAAC,IAAKA,CAAC,CAACC,IAAI,CAAC,CACtCC,IAAI,CAACnC,iBAAM,CAACoC,SAAS,CAACC,4BAAkB,CAAC,EAAErC,iBAAM,CAACsC,QAAQ,CAAC,SAASjC,CAAC,CAACQ,IAAI,EAAE,CAAC,CAAC,EACjF;MAAEiB;IAAM,CAAE;GAEjB,CACJ;EAED,MAAMS,MAAM,GAAG,IAAAC,aAAQ,EAAC,MACtBC,UAAU,CAAC;IACTxB,KAAK,EAAEtC,CAAC,CAACsC,KAAK,CAACR,KAAK,IAAIL,SAAS;IACjCsC,IAAI,EAAE/D,CAAC,CAAC+D,IAAI,CAACjC,KAAK;IAClBkC,YAAY,EAAEhE,CAAC,CAACiE,UAAU,CAACnC;GAC5B,CAAC,CACH;EACD,MAAMoC,aAAa,GAAG,IAAAL,aAAQ,EAAC,MAAMM,iBAAM,CAACC,cAAc,CAAC/E,MAAM,CAACyC,KAAK,CAAC8B,MAAM,CAAC9B,KAAK,CAAC,CAAC,CAAC;EACvF,OAAO,CAAC8B,MAAM,EAAEM,aAAa,EAAElE,CAAC,CAACqE,OAAO,EAAErE,CAAC,CAAU;AACvD,CAAC;AAAAsE,OAAA,CAAA9C,aAAA,GAAAA,aAAA;AAED,SAASsC,UAAUA,CAAO9D,CAIzB;EACC,IAAIA,CAAC,CAACsC,KAAK,EAAE;IACX,OAAOjD,MAAM,CAACkF,mBAAmB,CAC/BvE,CAAC,CAACsC,KAAK,CAACC,kBAAO,CAACG,mBAAmB,CAAC,EACpC1C,CAAC,CAAC+D,IAAI,KAAKtC,SAAS,GAAG0C,iBAAM,CAACK,IAAI,EAAE,GAAGL,iBAAM,CAACM,IAAI,CAACpF,MAAM,CAACqF,OAAO,CAAC1E,CAAC,CAAC+D,IAAI,CAAC,CAAC,EAC1E/D,CAAC,CAACgE,YAAY,CACf;EACH;EACA,IAAIhE,CAAC,CAAC+D,IAAI,KAAKtC,SAAS,EAAE;IACxB,OAAOpC,MAAM,CAACqF,OAAO,CAAO1E,CAAC,CAAC+D,IAAI,EAAE/D,CAAC,CAACgE,YAAY,CAAC;EACrD;EAEA,OAAO3E,MAAM,CAACsF,OAAO,CAAC3E,CAAC,CAACgE,YAAY,CAAC;AACvC","ignoreList":[]}
|
package/dist/query.d.ts
CHANGED
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import * as Result from "@effect-rx/rx/Result";
|
|
2
2
|
import type { QueryKey, QueryObserverOptions, QueryObserverResult, RefetchOptions, UseQueryReturnType } from "@tanstack/vue-query";
|
|
3
|
-
import
|
|
4
|
-
import {
|
|
5
|
-
import type { ApiConfig, FetchResponse } from "effect-app/client";
|
|
3
|
+
import { Cause, Effect, Runtime } from "effect-app";
|
|
4
|
+
import { type ApiConfig, type FetchResponse } from "effect-app/client";
|
|
6
5
|
import type { HttpClient } from "effect-app/http";
|
|
7
6
|
import type { ComputedRef, WatchSource } from "vue";
|
|
8
7
|
export interface QueryObserverOptionsCustom<TQueryFnData = unknown, TError = Error, TData = TQueryFnData, TQueryData = TQueryFnData, TQueryKey extends QueryKey = QueryKey, TPageParam = never> extends Omit<QueryObserverOptions<TQueryFnData, TError, TData, TQueryData, TQueryKey, TPageParam>, "queryKey" | "queryFn"> {
|
package/dist/query.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"query.d.ts","sourceRoot":"","sources":["../src/query.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,MAAM,sBAAsB,CAAA;AAC9C,OAAO,KAAK,EACV,QAAQ,EACR,oBAAoB,EACpB,mBAAmB,EACnB,cAAc,EACd,kBAAkB,EACnB,MAAM,qBAAqB,CAAA;AAE5B,OAAO,
|
|
1
|
+
{"version":3,"file":"query.d.ts","sourceRoot":"","sources":["../src/query.ts"],"names":[],"mappings":"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"}
|
package/dist/query.js
CHANGED
|
@@ -4,7 +4,8 @@
|
|
|
4
4
|
/* eslint-disable @typescript-eslint/no-unsafe-assignment */
|
|
5
5
|
import * as Result from "@effect-rx/rx/Result";
|
|
6
6
|
import { useQuery } from "@tanstack/vue-query";
|
|
7
|
-
import { Effect, Option, Runtime } from "effect-app";
|
|
7
|
+
import { Cause, Effect, Option, Runtime, S } from "effect-app";
|
|
8
|
+
import { NotFoundError, UnauthorizedError } from "effect-app/client";
|
|
8
9
|
import { computed, ref } from "vue";
|
|
9
10
|
import { makeQueryKey, reportRuntimeError, run } from "./internal.js";
|
|
10
11
|
export function useSafeQuery(self,
|
|
@@ -57,6 +58,16 @@ export const useSafeQuery_ = (q, arg, options = {} // TODO
|
|
|
57
58
|
const r = useQuery(Effect.isEffect(handler)
|
|
58
59
|
? {
|
|
59
60
|
...options,
|
|
61
|
+
retry: (retryCount, error) => {
|
|
62
|
+
if (Runtime.isFiberFailure(error)) {
|
|
63
|
+
const cause = error[Runtime.FiberFailureCauseId];
|
|
64
|
+
const sq = Cause.squash(cause);
|
|
65
|
+
if (S.is(UnauthorizedError)(sq) || S.is(NotFoundError)(sq)) {
|
|
66
|
+
return false;
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
return retryCount < 6;
|
|
70
|
+
},
|
|
60
71
|
queryKey,
|
|
61
72
|
queryFn: ({ signal }) => run.value(Effect
|
|
62
73
|
.map(handler, (_) => _.body)
|
|
@@ -64,6 +75,16 @@ export const useSafeQuery_ = (q, arg, options = {} // TODO
|
|
|
64
75
|
}
|
|
65
76
|
: {
|
|
66
77
|
...options,
|
|
78
|
+
retry: (retryCount, error) => {
|
|
79
|
+
if (Runtime.isFiberFailure(error)) {
|
|
80
|
+
const cause = error[Runtime.FiberFailureCauseId];
|
|
81
|
+
const sq = Cause.squash(cause);
|
|
82
|
+
if (S.is(UnauthorizedError)(sq) || S.is(NotFoundError)(sq)) {
|
|
83
|
+
return false;
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
return retryCount < 6;
|
|
87
|
+
},
|
|
67
88
|
queryKey: [...queryKey, req],
|
|
68
89
|
queryFn: ({ signal }) => run
|
|
69
90
|
.value(Effect
|
|
@@ -87,4 +108,4 @@ function swrToQuery(r) {
|
|
|
87
108
|
}
|
|
88
109
|
return Result.initial(r.isValidating);
|
|
89
110
|
}
|
|
90
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
111
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvcXVlcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsdURBQXVEO0FBQ3ZELHNEQUFzRDtBQUN0RCx3REFBd0Q7QUFDeEQsNERBQTREO0FBQzVELE9BQU8sS0FBSyxNQUFNLE1BQU0sc0JBQXNCLENBQUE7QUFROUMsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLHFCQUFxQixDQUFBO0FBQzlDLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsQ0FBQyxFQUFFLE1BQU0sWUFBWSxDQUFBO0FBQzlELE9BQU8sRUFBc0MsYUFBYSxFQUFFLGlCQUFpQixFQUFFLE1BQU0sbUJBQW1CLENBQUE7QUFFeEcsT0FBTyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsTUFBTSxLQUFLLENBQUE7QUFFbkMsT0FBTyxFQUFFLFlBQVksRUFBRSxrQkFBa0IsRUFBRSxHQUFHLEVBQUUsTUFBTSxlQUFlLENBQUE7QUF3Q3JFLE1BQU0sVUFBVSxZQUFZLENBQzFCLElBQVM7QUFDVDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQXNCRTtBQUNGLFlBQWtCLEVBQ2xCLE9BQWE7SUFFYixPQUFPLE1BQU0sQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQztRQUNsQyxDQUFDLENBQUMsYUFBYSxDQUFDLElBQUksRUFBRSxTQUFTLEVBQUUsWUFBWSxDQUFDO1FBQzlDLENBQUMsQ0FBQyxhQUFhLENBQUMsSUFBSSxFQUFFLFlBQVksRUFBRSxPQUFPLENBQUMsQ0FBQTtBQUNoRCxDQUFDO0FBTUQsZ0JBQWdCO0FBQ2hCLHNSQUFzUjtBQUN0UiwyUkFBMlI7QUFDM1IsdVJBQXVSO0FBQ3ZSLE1BQU0sQ0FBQyxNQUFNLGFBQWEsR0FBRyxDQUMzQixDQW9CRyxFQUNILEdBQXdCLEVBQ3hCLFVBQXdFLEVBQUUsQ0FBQyxPQUFPO0VBQ2xGLEVBQUU7SUFDRixNQUFN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
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@effect-app/vue",
|
|
3
|
-
"version": "1.9.
|
|
3
|
+
"version": "1.9.5",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"homepage": "https://github.com/effect-ts-app/libs/tree/main/packages/vue",
|
|
@@ -10,8 +10,8 @@
|
|
|
10
10
|
"query-string": "^9.1.0",
|
|
11
11
|
"@effect-app/core": "1.7.1",
|
|
12
12
|
"@effect-app/schema": "1.7.1",
|
|
13
|
-
"
|
|
14
|
-
"effect-app": "1.
|
|
13
|
+
"effect-app": "1.10.2",
|
|
14
|
+
"@effect-app/vue": "1.9.5"
|
|
15
15
|
},
|
|
16
16
|
"peerDependencies": {
|
|
17
17
|
"@effect/platform": "^0.63.3",
|
package/src/query.ts
CHANGED
|
@@ -11,9 +11,8 @@ import type {
|
|
|
11
11
|
UseQueryReturnType
|
|
12
12
|
} from "@tanstack/vue-query"
|
|
13
13
|
import { useQuery } from "@tanstack/vue-query"
|
|
14
|
-
import
|
|
15
|
-
import {
|
|
16
|
-
import type { ApiConfig, FetchResponse } from "effect-app/client"
|
|
14
|
+
import { Cause, Effect, Option, Runtime, S } from "effect-app"
|
|
15
|
+
import { type ApiConfig, type FetchResponse, NotFoundError, UnauthorizedError } from "effect-app/client"
|
|
17
16
|
import type { HttpClient } from "effect-app/http"
|
|
18
17
|
import { computed, ref } from "vue"
|
|
19
18
|
import type { ComputedRef, WatchSource } from "vue"
|
|
@@ -139,6 +138,17 @@ export const useSafeQuery_ = <I, A, E>(
|
|
|
139
138
|
Effect.isEffect(handler)
|
|
140
139
|
? {
|
|
141
140
|
...options,
|
|
141
|
+
retry: (retryCount, error) => {
|
|
142
|
+
if (Runtime.isFiberFailure(error)) {
|
|
143
|
+
const cause = error[Runtime.FiberFailureCauseId]
|
|
144
|
+
const sq = Cause.squash(cause)
|
|
145
|
+
if (S.is(UnauthorizedError)(sq) || S.is(NotFoundError)(sq)) {
|
|
146
|
+
return false
|
|
147
|
+
}
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
return retryCount < 6
|
|
151
|
+
},
|
|
142
152
|
queryKey,
|
|
143
153
|
queryFn: ({ signal }) =>
|
|
144
154
|
run.value(
|
|
@@ -150,6 +160,17 @@ export const useSafeQuery_ = <I, A, E>(
|
|
|
150
160
|
}
|
|
151
161
|
: {
|
|
152
162
|
...options,
|
|
163
|
+
retry: (retryCount, error) => {
|
|
164
|
+
if (Runtime.isFiberFailure(error)) {
|
|
165
|
+
const cause = error[Runtime.FiberFailureCauseId]
|
|
166
|
+
const sq = Cause.squash(cause)
|
|
167
|
+
if (S.is(UnauthorizedError)(sq) || S.is(NotFoundError)(sq)) {
|
|
168
|
+
return false
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
|
|
172
|
+
return retryCount < 6
|
|
173
|
+
},
|
|
153
174
|
queryKey: [...queryKey, req],
|
|
154
175
|
queryFn: ({ signal }) =>
|
|
155
176
|
run
|