@effect-app/vue 2.14.0 → 2.15.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +15 -0
- package/_cjs/index.cjs +0 -22
- package/_cjs/index.cjs.map +1 -1
- package/_cjs/makeClient.cjs +169 -72
- package/_cjs/makeClient.cjs.map +1 -1
- package/_cjs/mutate.cjs +84 -101
- package/_cjs/mutate.cjs.map +1 -1
- package/_cjs/query.cjs +9 -52
- package/_cjs/query.cjs.map +1 -1
- package/dist/index.d.ts +0 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -3
- package/dist/makeClient.d.ts +87 -70
- package/dist/makeClient.d.ts.map +1 -1
- package/dist/makeClient.js +164 -84
- package/dist/mutate.d.ts +18 -26
- package/dist/mutate.d.ts.map +1 -1
- package/dist/mutate.js +67 -84
- package/dist/query.d.ts +10 -24
- package/dist/query.d.ts.map +1 -1
- package/dist/query.js +13 -55
- package/package.json +8 -48
- package/src/index.ts +0 -2
- package/src/makeClient.ts +463 -227
- package/src/mutate.ts +111 -141
- package/src/query.ts +30 -116
- package/_cjs/hooks.cjs +0 -28
- package/_cjs/hooks.cjs.map +0 -1
- package/_cjs/makeClient2.cjs +0 -221
- package/_cjs/makeClient2.cjs.map +0 -1
- package/_cjs/mutate2.cjs +0 -118
- package/_cjs/mutate2.cjs.map +0 -1
- package/_cjs/query2.cjs +0 -105
- package/_cjs/query2.cjs.map +0 -1
- package/dist/hooks.d.ts +0 -3
- package/dist/hooks.d.ts.map +0 -1
- package/dist/hooks.js +0 -4
- package/dist/makeClient2.d.ts +0 -74
- package/dist/makeClient2.d.ts.map +0 -1
- package/dist/makeClient2.js +0 -187
- package/dist/mutate2.d.ts +0 -42
- package/dist/mutate2.d.ts.map +0 -1
- package/dist/mutate2.js +0 -88
- package/dist/query2.d.ts +0 -23
- package/dist/query2.d.ts.map +0 -1
- package/dist/query2.js +0 -97
- package/src/hooks.ts +0 -4
- package/src/makeClient2.ts +0 -353
- package/src/mutate2.ts +0 -197
- package/src/query2.ts +0 -205
package/_cjs/makeClient2.cjs
DELETED
|
@@ -1,221 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.makeClient2 = void 0;
|
|
7
|
-
var Sentry = _interopRequireWildcard(require("@sentry/browser"));
|
|
8
|
-
var _effectApp = require("effect-app");
|
|
9
|
-
var _Function = require("effect-app/Function");
|
|
10
|
-
var _Operations = require("effect-app/Operations");
|
|
11
|
-
var _utils = require("effect-app/utils");
|
|
12
|
-
var _vue = require("vue");
|
|
13
|
-
var _form = require("./form.cjs");
|
|
14
|
-
var _lib = require("./lib.cjs");
|
|
15
|
-
var _mutate = require("./mutate.cjs");
|
|
16
|
-
var _mutate2 = require("./mutate2.cjs");
|
|
17
|
-
var _query = require("./query2.cjs");
|
|
18
|
-
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); }
|
|
19
|
-
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
20
|
-
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
21
|
-
|
|
22
|
-
const makeClient2 = (useIntl, useToast, runtime, messages = {}) => {
|
|
23
|
-
const useSafeMutation = (0, _mutate2.makeMutation2)();
|
|
24
|
-
const useSafeQuery = (0, _query.makeQuery2)(runtime);
|
|
25
|
-
const useHandleRequestWithToast = () => {
|
|
26
|
-
const toast = useToast();
|
|
27
|
-
const {
|
|
28
|
-
intl
|
|
29
|
-
} = useIntl();
|
|
30
|
-
return handleRequestWithToast;
|
|
31
|
-
/**
|
|
32
|
-
* Pass a function that returns a Promise.
|
|
33
|
-
* Returns an execution function which reports errors as Toast.
|
|
34
|
-
*/
|
|
35
|
-
function handleRequestWithToast(f, action, options = {
|
|
36
|
-
suppressErrorToast: false
|
|
37
|
-
}) {
|
|
38
|
-
const message = messages[action] ?? action;
|
|
39
|
-
const warnMessage = intl.value.formatMessage({
|
|
40
|
-
id: "handle.with_warnings"
|
|
41
|
-
}, {
|
|
42
|
-
action: message
|
|
43
|
-
});
|
|
44
|
-
const successMessage = intl.value.formatMessage({
|
|
45
|
-
id: "handle.success"
|
|
46
|
-
}, {
|
|
47
|
-
action: message
|
|
48
|
-
});
|
|
49
|
-
const errorMessage = intl.value.formatMessage({
|
|
50
|
-
id: "handle.with_errors"
|
|
51
|
-
}, {
|
|
52
|
-
action: message
|
|
53
|
-
});
|
|
54
|
-
const handleEffect = self => self.pipe(_effectApp.Effect.exit, _effectApp.Effect.tap(_effectApp.Exit.matchEffect({
|
|
55
|
-
onSuccess: r => _effectApp.Effect.gen(function* () {
|
|
56
|
-
if (options.suppressSuccessToast) {
|
|
57
|
-
return;
|
|
58
|
-
}
|
|
59
|
-
toast.success(successMessage + (_effectApp.S.is(_Operations.OperationSuccess)(r) && r.message ? "\n" + r.message : ""));
|
|
60
|
-
}),
|
|
61
|
-
onFailure: err => _effectApp.Effect.gen(function* () {
|
|
62
|
-
if (_effectApp.Cause.isInterruptedOnly(err)) {
|
|
63
|
-
return;
|
|
64
|
-
}
|
|
65
|
-
const fail = _effectApp.Cause.failureOption(err);
|
|
66
|
-
if (_effectApp.Option.isSome(fail)) {
|
|
67
|
-
if (fail.value._tag === "SuppressErrors") {
|
|
68
|
-
return _effectApp.Effect.succeed(void 0);
|
|
69
|
-
}
|
|
70
|
-
if (fail.value._tag === "OperationFailure") {
|
|
71
|
-
toast.warning(warnMessage + fail.value.message ? "\n" + fail.value.message : "");
|
|
72
|
-
return;
|
|
73
|
-
}
|
|
74
|
-
if (!options.suppressErrorToast) {
|
|
75
|
-
toast.error(`${errorMessage}:\n` + renderError(fail.value));
|
|
76
|
-
}
|
|
77
|
-
console.warn(fail, fail.toString());
|
|
78
|
-
return;
|
|
79
|
-
}
|
|
80
|
-
const extra = {
|
|
81
|
-
action,
|
|
82
|
-
message: `Unexpected Error trying to ${action}`
|
|
83
|
-
};
|
|
84
|
-
Sentry.captureException(err, {
|
|
85
|
-
extra
|
|
86
|
-
});
|
|
87
|
-
console.error(err, extra);
|
|
88
|
-
toast.error(intl.value.formatMessage({
|
|
89
|
-
id: "handle.unexpected_error"
|
|
90
|
-
}, {
|
|
91
|
-
action: message,
|
|
92
|
-
error: JSON.stringify(err, undefined, 2)
|
|
93
|
-
}));
|
|
94
|
-
})
|
|
95
|
-
})));
|
|
96
|
-
return Object.assign(_effectApp.Effect.isEffect(f) ? (0, _Function.pipe)(f, handleEffect) : (0, _Function.flow)(f, handleEffect), {
|
|
97
|
-
action
|
|
98
|
-
});
|
|
99
|
-
}
|
|
100
|
-
function renderError(e) {
|
|
101
|
-
return _effectApp.Match.value(e).pipe(_effectApp.Match.tags({
|
|
102
|
-
// HttpErrorRequest: e =>
|
|
103
|
-
// intl.value.formatMessage(
|
|
104
|
-
// { id: "handle.request_error" },
|
|
105
|
-
// { error: `${e.error}` },
|
|
106
|
-
// ),
|
|
107
|
-
// HttpErrorResponse: e =>
|
|
108
|
-
// e.response.status >= 500 ||
|
|
109
|
-
// e.response.body._tag !== "Some" ||
|
|
110
|
-
// !e.response.body.value
|
|
111
|
-
// ? intl.value.formatMessage(
|
|
112
|
-
// { id: "handle.error_response" },
|
|
113
|
-
// {
|
|
114
|
-
// error: `${
|
|
115
|
-
// e.response.body._tag === "Some" && e.response.body.value
|
|
116
|
-
// ? parseError(e.response.body.value)
|
|
117
|
-
// : "Unknown"
|
|
118
|
-
// } (${e.response.status})`,
|
|
119
|
-
// },
|
|
120
|
-
// )
|
|
121
|
-
// : intl.value.formatMessage(
|
|
122
|
-
// { id: "handle.unexpected_error" },
|
|
123
|
-
// {
|
|
124
|
-
// error:
|
|
125
|
-
// JSON.stringify(e.response.body, undefined, 2) +
|
|
126
|
-
// "( " +
|
|
127
|
-
// e.response.status +
|
|
128
|
-
// ")",
|
|
129
|
-
// },
|
|
130
|
-
// ),
|
|
131
|
-
// ResponseError: e =>
|
|
132
|
-
// intl.value.formatMessage(
|
|
133
|
-
// { id: "handle.response_error" },
|
|
134
|
-
// { error: `${e.error}` },
|
|
135
|
-
// ),
|
|
136
|
-
ParseError: e => {
|
|
137
|
-
console.warn(e.toString());
|
|
138
|
-
return intl.value.formatMessage({
|
|
139
|
-
id: "validation.failed"
|
|
140
|
-
});
|
|
141
|
-
}
|
|
142
|
-
}), _effectApp.Match.orElse(e => intl.value.formatMessage({
|
|
143
|
-
id: "handle.unexpected_error"
|
|
144
|
-
}, {
|
|
145
|
-
error: `${e.message ?? e._tag ?? e}`
|
|
146
|
-
})));
|
|
147
|
-
}
|
|
148
|
-
};
|
|
149
|
-
/**
|
|
150
|
-
* Pass a function that returns an Effect, e.g from a client action, give it a name, and optionally pass an onOperationSuccess callback.
|
|
151
|
-
* Returns a tuple with state ref and execution function which reports errors as Toast.
|
|
152
|
-
*/
|
|
153
|
-
const useAndHandleMutation = (self, action, options) => {
|
|
154
|
-
const handleRequestWithToast = useHandleRequestWithToast();
|
|
155
|
-
const [a, b] = useSafeMutation({
|
|
156
|
-
...self,
|
|
157
|
-
handler: _effectApp.Effect.isEffect(self.handler) ? (0, _Function.pipe)(_effectApp.Effect.annotateCurrentSpan({
|
|
158
|
-
action
|
|
159
|
-
}), _effectApp.Effect.andThen(self.handler)) : (...args) => (0, _Function.pipe)(_effectApp.Effect.annotateCurrentSpan({
|
|
160
|
-
action
|
|
161
|
-
}), _effectApp.Effect.andThen(self.handler(...args)))
|
|
162
|
-
}, options ? (0, _utils.dropUndefinedT)(options) : undefined);
|
|
163
|
-
return (0, _Function.tuple)((0, _vue.computed)(() => (0, _mutate.mutationResultToVue)(a.value)), handleRequestWithToast(b, action, options));
|
|
164
|
-
};
|
|
165
|
-
function makeUseAndHandleMutation(defaultOptions) {
|
|
166
|
-
return (self, action, options) => {
|
|
167
|
-
return useAndHandleMutation(self, action, {
|
|
168
|
-
...defaultOptions,
|
|
169
|
-
...options
|
|
170
|
-
});
|
|
171
|
-
};
|
|
172
|
-
}
|
|
173
|
-
const useSafeMutationWithState = self => {
|
|
174
|
-
const [a, b] = useSafeMutation(self);
|
|
175
|
-
return (0, _Function.tuple)((0, _vue.computed)(() => (0, _mutate.mutationResultToVue)(a.value)), b);
|
|
176
|
-
};
|
|
177
|
-
const buildFormFromSchema = (s, state, onSubmit) => {
|
|
178
|
-
const fields = (0, _form.buildFieldInfoFromFieldsRoot)(s).fields;
|
|
179
|
-
const schema = _effectApp.S.Struct(_effectApp.Struct.omit(s.fields, "_tag"));
|
|
180
|
-
const parse = _effectApp.S.decodeUnknown(schema);
|
|
181
|
-
const isDirty = (0, _vue.ref)(false);
|
|
182
|
-
const isValid = (0, _vue.ref)(true);
|
|
183
|
-
const runPromise = _effectApp.Runtime.runPromise((0, _lib.getRuntime)(runtime));
|
|
184
|
-
const submit1 = onSubmit => async e => {
|
|
185
|
-
const r = await e;
|
|
186
|
-
if (!r.valid) return;
|
|
187
|
-
return runPromise(onSubmit(new s(await runPromise(parse(state.value)))));
|
|
188
|
-
};
|
|
189
|
-
const submit = submit1(onSubmit);
|
|
190
|
-
(0, _vue.watch)(state, v => {
|
|
191
|
-
// TODO: do better
|
|
192
|
-
isDirty.value = JSON.stringify(v) !== JSON.stringify(state.value);
|
|
193
|
-
}, {
|
|
194
|
-
deep: true
|
|
195
|
-
});
|
|
196
|
-
const submitFromState = _effectApp.Effect.gen(function* () {
|
|
197
|
-
if (!isValid.value) return;
|
|
198
|
-
return yield* onSubmit(yield* parse(state.value));
|
|
199
|
-
}); // () => submit(Promise.resolve({ valid: isValid.value }))
|
|
200
|
-
return {
|
|
201
|
-
fields,
|
|
202
|
-
/** optimized for Vuetify v-form submit callback */
|
|
203
|
-
submit,
|
|
204
|
-
/** optimized for Native form submit callback or general use */
|
|
205
|
-
submitFromState,
|
|
206
|
-
isDirty,
|
|
207
|
-
isValid
|
|
208
|
-
};
|
|
209
|
-
};
|
|
210
|
-
return {
|
|
211
|
-
useSafeMutationWithState,
|
|
212
|
-
useAndHandleMutation,
|
|
213
|
-
makeUseAndHandleMutation,
|
|
214
|
-
useHandleRequestWithToast,
|
|
215
|
-
buildFormFromSchema,
|
|
216
|
-
useSafeQuery,
|
|
217
|
-
useSafeMutation
|
|
218
|
-
};
|
|
219
|
-
};
|
|
220
|
-
exports.makeClient2 = makeClient2;
|
|
221
|
-
//# sourceMappingURL=makeClient2.cjs.map
|
package/_cjs/makeClient2.cjs.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"makeClient2.cjs","names":["Sentry","_interopRequireWildcard","require","_effectApp","_Function","_Operations","_utils","_vue","_form","_lib","_mutate","_mutate2","_query","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","makeClient2","useIntl","useToast","runtime","messages","useSafeMutation","makeMutation2","useSafeQuery","makeQuery2","useHandleRequestWithToast","toast","intl","handleRequestWithToast","f","action","options","suppressErrorToast","message","warnMessage","value","formatMessage","id","successMessage","errorMessage","handleEffect","self","pipe","Effect","exit","tap","Exit","matchEffect","onSuccess","gen","suppressSuccessToast","success","S","is","OperationSuccess","onFailure","err","Cause","isInterruptedOnly","fail","failureOption","Option","isSome","_tag","succeed","warning","error","renderError","console","warn","toString","extra","captureException","JSON","stringify","undefined","assign","isEffect","flow","Match","tags","ParseError","orElse","useAndHandleMutation","b","handler","annotateCurrentSpan","andThen","args","dropUndefinedT","tuple","computed","mutationResultToVue","makeUseAndHandleMutation","defaultOptions","useSafeMutationWithState","buildFormFromSchema","s","state","onSubmit","fields","buildFieldInfoFromFieldsRoot","schema","Struct","omit","parse","decodeUnknown","isDirty","ref","isValid","runPromise","Runtime","getRuntime","submit1","valid","submit","watch","v","deep","submitFromState","exports"],"sources":["../src/makeClient2.ts"],"sourcesContent":[null],"mappings":";;;;;;AACA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,UAAA,GAAAD,OAAA;AAEA,IAAAE,SAAA,GAAAF,OAAA;AACA,IAAAG,WAAA,GAAAH,OAAA;AAEA,IAAAI,MAAA,GAAAJ,OAAA;AAEA,IAAAK,IAAA,GAAAL,OAAA;AACA,IAAAM,KAAA,GAAAN,OAAA;AACA,IAAAO,IAAA,GAAAP,OAAA;AAGA,IAAAQ,OAAA,GAAAR,OAAA;AAEA,IAAAS,QAAA,GAAAT,OAAA;AACA,IAAAU,MAAA,GAAAV,OAAA;AAAwC,SAAAW,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,SAAAb,wBAAAa,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;AAjBxC;;AAmCO,MAAMW,WAAW,GAAGA,CACzBC,OAA0C,EAC1CC,QAIC,EACDC,OAAmD,EACnDC,QAAA,GAA+C,EAAE,KAC/C;EACF,MAAMC,eAAe,GAAG,IAAAC,sBAAa,GAAE;EACvC,MAAMC,YAAY,GAAG,IAAAC,iBAAU,EAACL,OAAO,CAAC;EACxC,MAAMM,yBAAyB,GAAGA,CAAA,KAAK;IACrC,MAAMC,KAAK,GAAGR,QAAQ,EAAE;IACxB,MAAM;MAAES;IAAI,CAAE,GAAGV,OAAO,EAAE;IAE1B,OAAOW,sBAAsB;IAC7B;;;;IAIA,SAASA,sBAAsBA,CAM7BC,CAAyD,EACzDC,MAAc,EACdC,OAAA,GAAmB;MAAEC,kBAAkB,EAAE;IAAK,CAAE;MAEhD,MAAMC,OAAO,GAAGb,QAAQ,CAACU,MAAM,CAAC,IAAIA,MAAM;MAC1C,MAAMI,WAAW,GAAGP,IAAI,CAACQ,KAAK,CAACC,aAAa,CAC1C;QAAEC,EAAE,EAAE;MAAsB,CAAE,EAC9B;QAAEP,MAAM,EAAEG;MAAO,CAAE,CACpB;MACD,MAAMK,cAAc,GAAGX,IAAI,CAACQ,KAAK,CAACC,aAAa,CAC7C;QAAEC,EAAE,EAAE;MAAgB,CAAE,EACxB;QAAEP,MAAM,EAAEG;MAAO,CAAE,CACpB;MACD,MAAMM,YAAY,GAAGZ,IAAI,CAACQ,KAAK,CAACC,aAAa,CAC3C;QAAEC,EAAE,EAAE;MAAoB,CAAE,EAC5B;QAAEP,MAAM,EAAEG;MAAO,CAAE,CACpB;MACD,MAAMO,YAAY,GAAIC,IAAqB,IACzCA,IAAI,CAACC,IAAI,CACPC,iBAAM,CAACC,IAAI,EACXD,iBAAM,CAACE,GAAG,CACRC,eAAI,CAACC,WAAW,CAAC;QACfC,SAAS,EAAGjD,CAAC,IACX4C,iBAAM,CAACM,GAAG,CAAC,aAAS;UAClB,IAAIlB,OAAO,CAACmB,oBAAoB,EAAE;YAChC;UACF;UACAxB,KAAK,CAACyB,OAAO,CACXb,cAAc,IACTc,YAAC,CAACC,EAAE,CAACC,4BAAgB,CAAC,CAACvD,CAAC,CAAC,IAAIA,CAAC,CAACkC,OAAO,GACrC,IAAI,GAAGlC,CAAC,CAACkC,OAAO,GAChB,EAAE,CAAC,CACV;QACH,CAAC,CAAC;QACJsB,SAAS,EAAGC,GAAG,IACbb,iBAAM,CAACM,GAAG,CAAC,aAAS;UAClB,IAAIQ,gBAAK,CAACC,iBAAiB,CAACF,GAAG,CAAC,EAAE;YAChC;UACF;UAEA,MAAMG,IAAI,GAAGF,gBAAK,CAACG,aAAa,CAACJ,GAAG,CAAC;UACrC,IAAIK,iBAAM,CAACC,MAAM,CAACH,IAAI,CAAC,EAAE;YACvB,IAAIA,IAAI,CAACxB,KAAK,CAAC4B,IAAI,KAAK,gBAAgB,EAAE;cACxC,OAAOpB,iBAAM,CAACqB,OAAO,CAAC,KAAK,CAAC,CAAC;YAC/B;YAEA,IAAIL,IAAI,CAACxB,KAAK,CAAC4B,IAAI,KAAK,kBAAkB,EAAE;cAC1CrC,KAAK,CAACuC,OAAO,CACX/B,WAAW,GAAGyB,IAAI,CAACxB,KAAK,CAACF,OAAO,GAC5B,IAAI,GAAG0B,IAAI,CAACxB,KAAK,CAACF,OAAO,GACzB,EAAE,CACP;cACD;YACF;YAEA,IAAI,CAACF,OAAO,CAACC,kBAAkB,EAAE;cAC/BN,KAAK,CAACwC,KAAK,CAAC,GAAG3B,YAAY,KAAK,GAAG4B,WAAW,CAACR,IAAI,CAACxB,KAAK,CAAC,CAAC;YAC7D;YAEAiC,OAAO,CAACC,IAAI,CAACV,IAAI,EAAEA,IAAI,CAACW,QAAQ,EAAE,CAAC;YACnC;UACF;UAEA,MAAMC,KAAK,GAAG;YACZzC,MAAM;YACNG,OAAO,EAAE,8BAA8BH,MAAM;WAC9C;UACD/C,MAAM,CAACyF,gBAAgB,CAAChB,GAAG,EAAE;YAAEe;UAAK,CAAE,CAAC;UACvCH,OAAO,CAACF,KAAK,CAACV,GAAG,EAAEe,KAAK,CAAC;UAEzB7C,KAAK,CAACwC,KAAK,CACTvC,IAAI,CAACQ,KAAK,CAACC,aAAa,CACtB;YAAEC,EAAE,EAAE;UAAyB,CAAE,EACjC;YACEP,MAAM,EAAEG,OAAO;YACfiC,KAAK,EAAEO,IAAI,CAACC,SAAS,CAAClB,GAAG,EAAEmB,SAAS,EAAE,CAAC;WACxC,CACF,CACF;QACH,CAAC;OACJ,CAAC,CACH,CACF;MACH,OAAOnE,MAAM,CAACoE,MAAM,CAClBjC,iBAAM,CAACkC,QAAQ,CAAChD,CAAC,CAAC,GACd,IAAAa,cAAI,EACJb,CAAC,EACDW,YAAY,CACb,GACC,IAAAsC,cAAI,EACJjD,CAAC,EACDW,YAAY,CACb,EACH;QAAEV;MAAM,CAAE,CACX;IACH;IAEA,SAASqC,WAAWA,CAACtE,CAAiB;MACpC,OAAOkF,gBAAK,CAAC5C,KAAK,CAACtC,CAAC,CAAC,CAAC6C,IAAI,CACxBqC,gBAAK,CAACC,IAAI,CAAC;QACT;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACAC,UAAU,EAAGpF,CAAC,IAAI;UAChBuE,OAAO,CAACC,IAAI,CAACxE,CAAC,CAACyE,QAAQ,EAAE,CAAC;UAC1B,OAAO3C,IAAI,CAACQ,KAAK,CAACC,aAAa,CAAC;YAAEC,EAAE,EAAE;UAAmB,CAAE,CAAC;QAC9D;OACD,CAAC,EACF0C,gBAAK,CAACG,MAAM,CAAErF,CAAC,IACb8B,IAAI,CAACQ,KAAK,CAACC,aAAa,CACtB;QAAEC,EAAE,EAAE;MAAyB,CAAE,EACjC;QACE6B,KAAK,EAAE,GAAGrE,CAAC,CAACoC,OAAO,IAAIpC,CAAC,CAACkE,IAAI,IAAIlE,CAAC;OACnC,CACF,CACF,CACF;IACH;EACF,CAAC;EAED;;;;EAIA,MAAMsF,oBAAoB,GAWtBA,CAAC1C,IAAS,EAAEX,MAAW,EAAEC,OAAmB,KAAS;IACvD,MAAMH,sBAAsB,GAAGH,yBAAyB,EAAE;IAC1D,MAAM,CAAClB,CAAC,EAAE6E,CAAC,CAAC,GAAG/D,eAAe,CAC5B;MACE,GAAGoB,IAAI;MACP4C,OAAO,EAAE1C,iBAAM,CAACkC,QAAQ,CAACpC,IAAI,CAAC4C,OAAO,CAAC,GACjC,IAAA3C,cAAI,EACLC,iBAAM,CAAC2C,mBAAmB,CAAC;QAAExD;MAAM,CAAE,CAAC,EACtCa,iBAAM,CAAC4C,OAAO,CAAC9C,IAAI,CAAC4C,OAAO,CAAC,CACrB,GACP,CAAC,GAAGG,IAAW,KACf,IAAA9C,cAAI,EACFC,iBAAM,CAAC2C,mBAAmB,CAAC;QAAExD;MAAM,CAAE,CAAC,EACtCa,iBAAM,CAAC4C,OAAO,CAAC9C,IAAI,CAAC4C,OAAO,CAAC,GAAGG,IAAI,CAAC,CAAC;KAE5C,EACDzD,OAAO,GAAG,IAAA0D,qBAAc,EAAC1D,OAAO,CAAC,GAAG4C,SAAS,CAC9C;IAED,OAAO,IAAAe,eAAK,EACV,IAAAC,aAAQ,EAAC,MAAM,IAAAC,2BAAmB,EAACrF,CAAC,CAAC4B,KAAK,CAAC,CAAC,EAC5CP,sBAAsB,CAACwD,CAAQ,EAAEtD,MAAM,EAAEC,OAAO,CAAC,CAClD;EACH,CAAC;EAED,SAAS8D,wBAAwBA,CAC/BC,cAA0B;IAE1B,OAAQ,CAACrD,IAAS,EAAEX,MAAW,EAAEC,OAAY,KAAI;MAC/C,OAAOoD,oBAAoB,CACzB1C,IAAI,EACJX,MAAM,EACN;QAAE,GAAGgE,cAAc;QAAE,GAAG/D;MAAO,CAAE,CAClC;IACH,CAAC;EAYH;EAEA,MAAMgE,wBAAwB,GAC5BtD,IAAkD,IAChD;IACF,MAAM,CAAClC,CAAC,EAAE6E,CAAC,CAAC,GAAG/D,eAAe,CAACoB,IAAI,CAAC;IAEpC,OAAO,IAAAiD,eAAK,EACV,IAAAC,aAAQ,EAAC,MAAM,IAAAC,2BAAmB,EAACrF,CAAC,CAAC4B,KAAK,CAAC,CAAC,EAC5CiD,CAAC,CACF;EACH,CAAC;EAED,MAAMY,mBAAmB,GAAGA,CAM1BC,CAM+C,EAC/CC,KAA8B,EAC9BC,QAAgD,KAC9C;IACF,MAAMC,MAAM,GAAG,IAAAC,kCAA4B,EAACJ,CAAC,CAAC,CAACG,MAAM;IACrD,MAAME,MAAM,GAAGlD,YAAC,CAACmD,MAAM,CAACA,iBAAM,CAACC,IAAI,CAACP,CAAC,CAACG,MAAM,EAAE,MAAM,CAAC,CAAQ;IAC7D,MAAMK,KAAK,GAAGrD,YAAC,CAACsD,aAAa,CAAcJ,MAAM,CAAC;IAClD,MAAMK,OAAO,GAAG,IAAAC,QAAG,EAAC,KAAK,CAAC;IAC1B,MAAMC,OAAO,GAAG,IAAAD,QAAG,EAAC,IAAI,CAAC;IACzB,MAAME,UAAU,GAAGC,kBAAO,CAACD,UAAU,CAAC,IAAAE,eAAU,EAAC7F,OAAO,CAAC,CAAC;IAE1D,MAAM8F,OAAO,GACVd,QAAgD,IAAK,MAA8CtG,CAAI,IAAI;MAC1G,MAAME,CAAC,GAAG,MAAMF,CAAC;MACjB,IAAI,CAACE,CAAC,CAACmH,KAAK,EAAE;MACd,OAAOJ,UAAU,CAACX,QAAQ,CAAC,IAAIF,CAAC,CAAC,MAAMa,UAAU,CAACL,KAAK,CAACP,KAAK,CAAC/D,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1E,CAAC;IACH,MAAMgF,MAAM,GAAGF,OAAO,CAACd,QAAQ,CAAC;IAEhC,IAAAiB,UAAK,EACHlB,KAAK,EACJmB,CAAC,IAAI;MACJ;MACAV,OAAO,CAACxE,KAAK,GAAGsC,IAAI,CAACC,SAAS,CAAC2C,CAAC,CAAC,KAAK5C,IAAI,CAACC,SAAS,CAACwB,KAAK,CAAC/D,KAAK,CAAC;IACnE,CAAC,EACD;MAAEmF,IAAI,EAAE;IAAI,CAAE,CACf;IAED,MAAMC,eAAe,GAAG5E,iBAAM,CAACM,GAAG,CAAC,aAAS;MAC1C,IAAI,CAAC4D,OAAO,CAAC1E,KAAK,EAAE;MACpB,OAAO,OAAOgE,QAAQ,CAAC,OAAOM,KAAK,CAACP,KAAK,CAAC/D,KAAK,CAAC,CAAC;IACnD,CAAC,CAAC,EAAC;IAEH,OAAO;MACLiE,MAAM;MACN;MACAe,MAAM;MACN;MACAI,eAAe;MACfZ,OAAO;MACPE;KACD;EACH,CAAC;EAED,OAAO;IACLd,wBAAwB;IACxBZ,oBAAoB;IACpBU,wBAAwB;IACxBpE,yBAAyB;IACzBuE,mBAAmB;IACnBzE,YAAY;IACZF;GACD;AACH,CAAC;AAAAmG,OAAA,CAAAxG,WAAA,GAAAA,WAAA","ignoreList":[]}
|
package/_cjs/mutate2.cjs
DELETED
|
@@ -1,118 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.make = make;
|
|
7
|
-
exports.makeMutation2 = void 0;
|
|
8
|
-
var Result = _interopRequireWildcard(require("@effect-rx/rx/Result"));
|
|
9
|
-
var _vueQuery = require("@tanstack/vue-query");
|
|
10
|
-
var _effectApp = require("effect-app");
|
|
11
|
-
var _Function = require("effect-app/Function");
|
|
12
|
-
var _vue = require("vue");
|
|
13
|
-
var _lib = require("./lib.cjs");
|
|
14
|
-
var _mutate = require("./mutate.cjs");
|
|
15
|
-
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); }
|
|
16
|
-
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
17
|
-
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
18
|
-
|
|
19
|
-
function make(self) {
|
|
20
|
-
const result = (0, _vue.shallowRef)(Result.initial());
|
|
21
|
-
const execute = _effectApp.Effect.sync(() => {
|
|
22
|
-
result.value = Result.waiting(result.value);
|
|
23
|
-
}).pipe(_effectApp.Effect.andThen(self), _effectApp.Effect.exit, _effectApp.Effect.andThen(Result.fromExit), _effectApp.Effect.flatMap(r => _effectApp.Effect.sync(() => result.value = r)));
|
|
24
|
-
const latestSuccess = (0, _vue.computed)(() => _effectApp.Option.getOrUndefined(Result.value(result.value)));
|
|
25
|
-
return (0, _Function.tuple)(result, latestSuccess, execute);
|
|
26
|
-
}
|
|
27
|
-
// TODO: more efficient invalidation, including args etc
|
|
28
|
-
// return Effect.promise(() => queryClient.invalidateQueries({
|
|
29
|
-
// predicate: (_) => nses.includes(_.queryKey.filter((_) => _.startsWith("$")).join("/"))
|
|
30
|
-
// }))
|
|
31
|
-
/*
|
|
32
|
-
// const nses: string[] = []
|
|
33
|
-
// for (let i = 0; i < ns.length; i++) {
|
|
34
|
-
// nses.push(ns.slice(0, i + 1).join("/"))
|
|
35
|
-
// }
|
|
36
|
-
*/
|
|
37
|
-
const makeMutation2 = () => {
|
|
38
|
-
/**
|
|
39
|
-
* Pass a function that returns an Effect, e.g from a client action, or an Effect
|
|
40
|
-
* Returns a tuple with state ref and execution function which reports errors as Toast.
|
|
41
|
-
*/
|
|
42
|
-
const useSafeMutation = (self, options) => {
|
|
43
|
-
const queryClient = (0, _vueQuery.useQueryClient)();
|
|
44
|
-
const state = (0, _vue.ref)({
|
|
45
|
-
_tag: "Initial"
|
|
46
|
-
});
|
|
47
|
-
const invalidateQueries = (filters, options) => _effectApp.Effect.promise(() => queryClient.invalidateQueries(filters, options));
|
|
48
|
-
function handleExit(exit) {
|
|
49
|
-
return _effectApp.Effect.sync(() => {
|
|
50
|
-
if (_effectApp.Exit.isSuccess(exit)) {
|
|
51
|
-
state.value = {
|
|
52
|
-
_tag: "Success",
|
|
53
|
-
data: exit.value
|
|
54
|
-
};
|
|
55
|
-
return;
|
|
56
|
-
}
|
|
57
|
-
const err = _effectApp.Cause.failureOption(exit.cause);
|
|
58
|
-
if (_effectApp.Option.isSome(err)) {
|
|
59
|
-
state.value = {
|
|
60
|
-
_tag: "Error",
|
|
61
|
-
error: err.value
|
|
62
|
-
};
|
|
63
|
-
return;
|
|
64
|
-
}
|
|
65
|
-
});
|
|
66
|
-
}
|
|
67
|
-
const invalidateCache = _effectApp.Effect.suspend(() => {
|
|
68
|
-
const queryKey = (0, _mutate.getQueryKey)(self);
|
|
69
|
-
if (options?.queryInvalidation) {
|
|
70
|
-
const opts = options.queryInvalidation(queryKey, self.name);
|
|
71
|
-
if (!opts.length) {
|
|
72
|
-
return _effectApp.Effect.void;
|
|
73
|
-
}
|
|
74
|
-
return _effectApp.Effect.andThen(_effectApp.Effect.annotateCurrentSpan({
|
|
75
|
-
queryKey,
|
|
76
|
-
opts
|
|
77
|
-
}), _effectApp.Effect.forEach(opts, _ => invalidateQueries(_.filters, _.options), {
|
|
78
|
-
concurrency: "inherit"
|
|
79
|
-
})).pipe(_effectApp.Effect.withSpan("client.query.invalidation", {
|
|
80
|
-
captureStackTrace: false
|
|
81
|
-
}));
|
|
82
|
-
}
|
|
83
|
-
if (!queryKey) return _effectApp.Effect.void;
|
|
84
|
-
return _effectApp.Effect.andThen(_effectApp.Effect.annotateCurrentSpan({
|
|
85
|
-
queryKey
|
|
86
|
-
}), invalidateQueries({
|
|
87
|
-
queryKey
|
|
88
|
-
})).pipe(_effectApp.Effect.withSpan("client.query.invalidation", {
|
|
89
|
-
captureStackTrace: false
|
|
90
|
-
}));
|
|
91
|
-
});
|
|
92
|
-
const onSuccess = options?.onSuccess;
|
|
93
|
-
const handler = self.handler;
|
|
94
|
-
const r = _effectApp.Effect.isEffect(handler) ? (0, _Function.tuple)(state, _effectApp.Effect.sync(() => {
|
|
95
|
-
state.value = {
|
|
96
|
-
_tag: "Loading"
|
|
97
|
-
};
|
|
98
|
-
}).pipe(_effectApp.Effect.zipRight(handler), _effectApp.Effect.tap(invalidateCache), _effectApp.Effect.tap(a => onSuccess ? _effectApp.Effect.promise(() => onSuccess(a, undefined)) : _effectApp.Effect.void), _effectApp.Effect.tapDefect(_lib.reportRuntimeError), _effectApp.Effect.onExit(handleExit), _effectApp.Effect.withSpan(`mutation ${self.name}`, {
|
|
99
|
-
captureStackTrace: false
|
|
100
|
-
}))) : (0, _Function.tuple)(state, fst => {
|
|
101
|
-
const effect = handler(fst);
|
|
102
|
-
return _effectApp.Effect.sync(() => {
|
|
103
|
-
state.value = {
|
|
104
|
-
_tag: "Loading"
|
|
105
|
-
};
|
|
106
|
-
}).pipe(_effectApp.Effect.zipRight(effect), _effectApp.Effect.tapBoth({
|
|
107
|
-
onFailure: () => invalidateCache,
|
|
108
|
-
onSuccess: () => invalidateCache
|
|
109
|
-
}), _effectApp.Effect.tap(a => onSuccess ? _effectApp.Effect.promise(() => onSuccess(a, fst)) : _effectApp.Effect.void), _effectApp.Effect.tapDefect(_lib.reportRuntimeError), _effectApp.Effect.onExit(handleExit), _effectApp.Effect.withSpan(`mutation ${self.name}`, {
|
|
110
|
-
captureStackTrace: false
|
|
111
|
-
}));
|
|
112
|
-
});
|
|
113
|
-
return r;
|
|
114
|
-
};
|
|
115
|
-
return useSafeMutation;
|
|
116
|
-
};
|
|
117
|
-
exports.makeMutation2 = makeMutation2;
|
|
118
|
-
//# sourceMappingURL=mutate2.cjs.map
|
package/_cjs/mutate2.cjs.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"mutate2.cjs","names":["Result","_interopRequireWildcard","require","_vueQuery","_effectApp","_Function","_vue","_lib","_mutate","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","make","self","result","shallowRef","initial","execute","Effect","sync","value","waiting","pipe","andThen","exit","fromExit","flatMap","latestSuccess","computed","Option","getOrUndefined","tuple","makeMutation2","useSafeMutation","options","queryClient","useQueryClient","state","ref","_tag","invalidateQueries","filters","promise","handleExit","Exit","isSuccess","data","err","Cause","failureOption","cause","isSome","error","invalidateCache","suspend","queryKey","getQueryKey","queryInvalidation","opts","name","length","void","annotateCurrentSpan","forEach","_","concurrency","withSpan","captureStackTrace","onSuccess","handler","isEffect","zipRight","tap","undefined","tapDefect","reportRuntimeError","onExit","fst","effect","tapBoth","onFailure","exports"],"sources":["../src/mutate2.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
package/_cjs/query2.cjs
DELETED
|
@@ -1,105 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.makeQuery2 = void 0;
|
|
7
|
-
var Result = _interopRequireWildcard(require("@effect-rx/rx/Result"));
|
|
8
|
-
var _vueQuery = require("@tanstack/vue-query");
|
|
9
|
-
var _effectApp = require("effect-app");
|
|
10
|
-
var _client = require("effect-app/client");
|
|
11
|
-
var _httpClient = require("effect-app/http/http-client");
|
|
12
|
-
var _vue = require("vue");
|
|
13
|
-
var _lib = require("./lib.cjs");
|
|
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); }
|
|
15
|
-
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
16
|
-
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
17
|
-
/* eslint-disable @typescript-eslint/no-unsafe-call */
|
|
18
|
-
/* eslint-disable @typescript-eslint/no-unsafe-return */
|
|
19
|
-
/* eslint-disable @typescript-eslint/no-unsafe-assignment */
|
|
20
|
-
|
|
21
|
-
const makeQuery2 = runtime => {
|
|
22
|
-
// TODO: options
|
|
23
|
-
// declare function useQuery<TQueryFnData = unknown, TError = DefaultError, TData = TQueryFnData, TQueryKey extends QueryKey = QueryKey>(options: UndefinedInitialQueryOptions<TQueryFnData, TError, TData, TQueryKey>, queryClient?: QueryClient): UseQueryReturnType<TData, TError>;
|
|
24
|
-
// declare function useQuery<TQueryFnData = unknown, TError = DefaultError, TData = TQueryFnData, TQueryKey extends QueryKey = QueryKey>(options: DefinedInitialQueryOptions<TQueryFnData, TError, TData, TQueryKey>, queryClient?: QueryClient): UseQueryDefinedReturnType<TData, TError>;
|
|
25
|
-
// declare function useQuery<TQueryFnData = unknown, TError = DefaultError, TData = TQueryFnData, TQueryKey extends QueryKey = QueryKey>(options: UseQueryOptions<TQueryFnData, TError, TData, TQueryFnData, TQueryKey>, queryClient?: QueryClient): UseQueryReturnType<TData, TError>;
|
|
26
|
-
const useSafeQuery_ = (q, arg, options = {} // TODO
|
|
27
|
-
) => {
|
|
28
|
-
const runPromise = _effectApp.Runtime.runPromise((0, _lib.getRuntime)(runtime));
|
|
29
|
-
const arr = arg;
|
|
30
|
-
const req = !arg ? undefined : typeof arr === "function" ? {
|
|
31
|
-
get value() {
|
|
32
|
-
return arr();
|
|
33
|
-
}
|
|
34
|
-
} : (0, _vue.ref)(arg);
|
|
35
|
-
const queryKey = (0, _lib.makeQueryKey)(q);
|
|
36
|
-
const handler = q.handler;
|
|
37
|
-
const r = (0, _vueQuery.useQuery)(_effectApp.Effect.isEffect(handler) ? {
|
|
38
|
-
...options,
|
|
39
|
-
retry: (retryCount, error) => {
|
|
40
|
-
if (_effectApp.Runtime.isFiberFailure(error)) {
|
|
41
|
-
const cause = error[_effectApp.Runtime.FiberFailureCauseId];
|
|
42
|
-
const sq = _effectApp.Cause.squash(cause);
|
|
43
|
-
if (!(0, _httpClient.isHttpRequestError)(sq) && !(0, _httpClient.isHttpResponseError)(sq) && !_effectApp.S.is(_client.ServiceUnavailableError)(sq)) {
|
|
44
|
-
return false;
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
return retryCount < 5;
|
|
48
|
-
},
|
|
49
|
-
queryKey,
|
|
50
|
-
queryFn: ({
|
|
51
|
-
signal
|
|
52
|
-
}) => runPromise(handler.pipe(_effectApp.Effect.tapDefect(_lib.reportRuntimeError), _effectApp.Effect.withSpan(`query ${q.name}`, {
|
|
53
|
-
captureStackTrace: false
|
|
54
|
-
})), {
|
|
55
|
-
signal
|
|
56
|
-
})
|
|
57
|
-
} : {
|
|
58
|
-
...options,
|
|
59
|
-
retry: (retryCount, error) => {
|
|
60
|
-
if (_effectApp.Runtime.isFiberFailure(error)) {
|
|
61
|
-
const cause = error[_effectApp.Runtime.FiberFailureCauseId];
|
|
62
|
-
const sq = _effectApp.Cause.squash(cause);
|
|
63
|
-
if (!(0, _httpClient.isHttpRequestError)(sq) && !(0, _httpClient.isHttpResponseError)(sq) && !_effectApp.S.is(_client.ServiceUnavailableError)(sq)) {
|
|
64
|
-
return false;
|
|
65
|
-
}
|
|
66
|
-
}
|
|
67
|
-
return retryCount < 5;
|
|
68
|
-
},
|
|
69
|
-
queryKey: [...queryKey, req],
|
|
70
|
-
queryFn: ({
|
|
71
|
-
signal
|
|
72
|
-
}) => runPromise(handler(req.value).pipe(_effectApp.Effect.tapDefect(_lib.reportRuntimeError), _effectApp.Effect.withSpan(`query ${q.name}`, {
|
|
73
|
-
captureStackTrace: false
|
|
74
|
-
})), {
|
|
75
|
-
signal
|
|
76
|
-
})
|
|
77
|
-
});
|
|
78
|
-
const result = (0, _vue.computed)(() => swrToQuery({
|
|
79
|
-
error: r.error.value ?? undefined,
|
|
80
|
-
data: r.data.value,
|
|
81
|
-
isValidating: r.isFetching.value
|
|
82
|
-
}));
|
|
83
|
-
const latestSuccess = (0, _vue.computed)(() => _effectApp.Option.getOrUndefined(Result.value(result.value)));
|
|
84
|
-
return [result, latestSuccess,
|
|
85
|
-
// one thing to keep in mind is that span will be disconnected as Context does not pass from outside.
|
|
86
|
-
// TODO: consider how we should handle the Result here which is `QueryObserverResult<A, KnownFiberFailure<E>>`
|
|
87
|
-
// and always ends up in the success channel, even when error..
|
|
88
|
-
options => _effectApp.Effect.promise(() => r.refetch(options)), r];
|
|
89
|
-
};
|
|
90
|
-
function swrToQuery(r) {
|
|
91
|
-
if (r.error) {
|
|
92
|
-
return Result.failureWithPrevious(r.error[_effectApp.Runtime.FiberFailureCauseId], r.data === undefined ? _effectApp.Option.none() : _effectApp.Option.some(Result.success(r.data)), r.isValidating);
|
|
93
|
-
}
|
|
94
|
-
if (r.data !== undefined) {
|
|
95
|
-
return Result.success(r.data, r.isValidating);
|
|
96
|
-
}
|
|
97
|
-
return Result.initial(r.isValidating);
|
|
98
|
-
}
|
|
99
|
-
function useSafeQuery(self, argOrOptions, options) {
|
|
100
|
-
return _effectApp.Effect.isEffect(self.handler) ? useSafeQuery_(self, undefined, argOrOptions) : useSafeQuery_(self, argOrOptions, options);
|
|
101
|
-
}
|
|
102
|
-
return useSafeQuery;
|
|
103
|
-
};
|
|
104
|
-
exports.makeQuery2 = makeQuery2;
|
|
105
|
-
//# sourceMappingURL=query2.cjs.map
|
package/_cjs/query2.cjs.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"query2.cjs","names":["Result","_interopRequireWildcard","require","_vueQuery","_effectApp","_client","_httpClient","_vue","_lib","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","makeQuery2","runtime","useSafeQuery_","q","arg","options","runPromise","Runtime","getRuntime","arr","req","undefined","value","ref","queryKey","makeQueryKey","handler","useQuery","Effect","isEffect","retry","retryCount","error","isFiberFailure","cause","FiberFailureCauseId","sq","Cause","squash","isHttpRequestError","isHttpResponseError","S","is","ServiceUnavailableError","queryFn","signal","pipe","tapDefect","reportRuntimeError","withSpan","name","captureStackTrace","result","computed","swrToQuery","data","isValidating","isFetching","latestSuccess","Option","getOrUndefined","promise","refetch","failureWithPrevious","none","some","success","initial","useSafeQuery","self","argOrOptions","exports"],"sources":["../src/query2.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
package/dist/hooks.d.ts
DELETED
package/dist/hooks.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../src/hooks.ts"],"names":[],"mappings":"AAEA,cAAc,aAAa,CAAA;AAC3B,cAAc,YAAY,CAAA"}
|
package/dist/hooks.js
DELETED
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
2
|
-
export * from "./mutate.js";
|
|
3
|
-
export * from "./query.js";
|
|
4
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaG9va3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaG9va3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsdURBQXVEO0FBRXZELGNBQWMsYUFBYSxDQUFBO0FBQzNCLGNBQWMsWUFBWSxDQUFBIn0=
|
package/dist/makeClient2.d.ts
DELETED
|
@@ -1,74 +0,0 @@
|
|
|
1
|
-
import { Effect, Exit, Runtime, S } from "effect-app";
|
|
2
|
-
import type { RequestHandler, RequestHandlerWithInput, TaggedRequestClassAny } from "effect-app/client/clientFor";
|
|
3
|
-
import type { Schema } from "effect-app/Schema";
|
|
4
|
-
import type { ComputedRef, Ref, ShallowRef } from "vue";
|
|
5
|
-
import type { Opts, ResponseErrors } from "./makeClient.js";
|
|
6
|
-
import type { MakeIntlReturn } from "./makeIntl.js";
|
|
7
|
-
import type { Res } from "./mutate.js";
|
|
8
|
-
type WithAction<A> = A & {
|
|
9
|
-
action: string;
|
|
10
|
-
};
|
|
11
|
-
type Resp<I, A, E, R> = readonly [
|
|
12
|
-
ComputedRef<Res<A, E>>,
|
|
13
|
-
WithAction<(I: I) => Effect<Exit<A, E>, never, R>>
|
|
14
|
-
];
|
|
15
|
-
type ActResp<A, E, R> = readonly [
|
|
16
|
-
ComputedRef<Res<A, E>>,
|
|
17
|
-
WithAction<Effect<Exit<A, E>, never, R>>
|
|
18
|
-
];
|
|
19
|
-
export declare const makeClient2: <Locale extends string, R>(useIntl: MakeIntlReturn<Locale>["useIntl"], useToast: () => {
|
|
20
|
-
error: (message: string) => void;
|
|
21
|
-
warning: (message: string) => void;
|
|
22
|
-
success: (message: string) => void;
|
|
23
|
-
}, runtime: ShallowRef<Runtime.Runtime<R> | undefined>, messages?: Record<string, string | undefined>) => {
|
|
24
|
-
useSafeMutationWithState: <I, E, A, Request extends TaggedRequestClassAny>(self: RequestHandlerWithInput<I, A, E, R, Request>) => readonly [ComputedRef<Res<A, E>>, (i: I) => Effect<A, E, R>];
|
|
25
|
-
useAndHandleMutation: {
|
|
26
|
-
<I, E_1 extends ResponseErrors, A_1, R_1, Request_1 extends TaggedRequestClassAny>(self: RequestHandlerWithInput<I, A_1, E_1, R_1, Request_1>, action: string, options?: Opts<A_1>): Resp<I, void, never, R_1>;
|
|
27
|
-
<E_2 extends ResponseErrors, A_2, R_2, Request_2 extends TaggedRequestClassAny>(self: RequestHandler<A_2, E_2, R_2, Request_2>, action: string, options?: Opts<A_2>): ActResp<void, never, R_2>;
|
|
28
|
-
};
|
|
29
|
-
makeUseAndHandleMutation: (defaultOptions?: Opts<any>) => {
|
|
30
|
-
<I, E_2 extends ResponseErrors, A_3, R_3, Request_3 extends TaggedRequestClassAny>(self: RequestHandlerWithInput<I, A_3, E_2, R_3, Request_3>, action: string, options?: Opts<A_3>): Resp<I, A_3, E_2, R_3>;
|
|
31
|
-
<E_3 extends ResponseErrors, A_4, Request_4 extends TaggedRequestClassAny>(self: RequestHandler<A_4, E_3, R, Request_4>, action: string, options?: Opts<A_4>): ActResp<A_4, E_3, R>;
|
|
32
|
-
};
|
|
33
|
-
useHandleRequestWithToast: () => <E_3 extends ResponseErrors, A_5, R_4, Args extends unknown[]>(f: Effect<A_5, E_3, R_4> | ((...args: Args) => Effect<A_5, E_3, R_4>), action: string, options?: Opts<A_5>) => (Effect.Effect<Exit.Exit<A_5, E_3>, never, R_4> | ((...a: Args) => Effect.Effect<Exit.Exit<A_5, E_3>, never, R_4>)) & {
|
|
34
|
-
action: string;
|
|
35
|
-
};
|
|
36
|
-
buildFormFromSchema: <From extends Record<PropertyKey, any>, To extends Record<PropertyKey, any>, C extends Record<PropertyKey, any>, OnSubmitA>(s: Schema<To, From, R> & {
|
|
37
|
-
new (c: C): any;
|
|
38
|
-
fields: S.Struct.Fields;
|
|
39
|
-
}, state: Ref<Omit<From, "_tag">>, onSubmit: (a: To) => Effect<OnSubmitA, never, R>) => {
|
|
40
|
-
fields: { [K in keyof To]-?: {
|
|
41
|
-
true: {
|
|
42
|
-
true: To[K] extends {
|
|
43
|
-
_tag: string;
|
|
44
|
-
} ? import("./form.js").DiscriminatedUnionFieldInfo<{ [P in import("./form.js").DistributiveNestedFieldInfoKey<To[K]> as P["_infoTag" & keyof P] & string]: P; }> : import("./form.js").UnionFieldInfo<import("./form.js").DistributiveNestedFieldInfoKey<To[K]>[]>;
|
|
45
|
-
false: import("./form.js").NestedFieldInfoKey<To[K]>;
|
|
46
|
-
}[`${To[K] extends object ? true : false}`];
|
|
47
|
-
false: import("./form.js").NestedFieldInfoKey<To[K]>;
|
|
48
|
-
}[`${import("effect-app/utils").IsUnion<To[K]>}`]; };
|
|
49
|
-
/** optimized for Vuetify v-form submit callback */
|
|
50
|
-
submit: <T extends Promise<{
|
|
51
|
-
valid: boolean;
|
|
52
|
-
}>>(e: T) => Promise<OnSubmitA | undefined>;
|
|
53
|
-
/** optimized for Native form submit callback or general use */
|
|
54
|
-
submitFromState: Effect.Effect<OnSubmitA | undefined, S.ParseResult.ParseError, R>;
|
|
55
|
-
isDirty: Ref<boolean, boolean>;
|
|
56
|
-
isValid: Ref<boolean, boolean>;
|
|
57
|
-
};
|
|
58
|
-
useSafeQuery: {
|
|
59
|
-
<E_3, A_6, Request_5 extends TaggedRequestClassAny>(self: RequestHandler<A_6, E_3, R, Request_5>, options?: (import("./query2.js").QueryObserverOptionsCustom<A_6, E_3, A_6, A_6, import("@tanstack/vue-query").QueryKey, never> & {
|
|
60
|
-
initialData: A_6 | import("@tanstack/vue-query").InitialDataFunction<A_6>;
|
|
61
|
-
}) | undefined): readonly [ComputedRef<import("@effect-rx/rx/Result").Result<A_6, E_3>>, ComputedRef<A_6>, (options?: import("@tanstack/vue-query").RefetchOptions) => Effect<import("@tanstack/vue-query").QueryObserverResult<A_6, import("./query2.js").KnownFiberFailure<E_3>>>, import("@tanstack/vue-query").UseQueryReturnType<any, any>];
|
|
62
|
-
<Arg, E_3, A_7, Request_6 extends TaggedRequestClassAny>(self: RequestHandlerWithInput<Arg, A_7, E_3, R, Request_6>, arg: Arg | import("vue").WatchSource<Arg>, options?: (import("./query2.js").QueryObserverOptionsCustom<A_7, E_3, A_7, A_7, import("@tanstack/vue-query").QueryKey, never> & {
|
|
63
|
-
initialData: A_7 | import("@tanstack/vue-query").InitialDataFunction<A_7>;
|
|
64
|
-
}) | undefined): readonly [ComputedRef<import("@effect-rx/rx/Result").Result<A_7, E_3>>, ComputedRef<A_7>, (options?: import("@tanstack/vue-query").RefetchOptions) => Effect<import("@tanstack/vue-query").QueryObserverResult<A_7, import("./query2.js").KnownFiberFailure<E_3>>>, import("@tanstack/vue-query").UseQueryReturnType<any, any>];
|
|
65
|
-
<E_4, A_8, Request_7 extends TaggedRequestClassAny>(self: RequestHandler<A_8, E_4, R, Request_7>, options?: import("./query2.js").QueryObserverOptionsCustom<A_8, E_4, A_8, A_8, import("@tanstack/vue-query").QueryKey, never> | undefined): readonly [ComputedRef<import("@effect-rx/rx/Result").Result<A_8, E_4>>, ComputedRef<A_8 | undefined>, (options?: import("@tanstack/vue-query").RefetchOptions) => Effect<import("@tanstack/vue-query").QueryObserverResult<A_8, import("./query2.js").KnownFiberFailure<E_4>>>, import("@tanstack/vue-query").UseQueryReturnType<any, any>];
|
|
66
|
-
<Arg, E_4, A_9, Request_8 extends TaggedRequestClassAny>(self: RequestHandlerWithInput<Arg, A_9, E_4, R, Request_8>, arg: Arg | import("vue").WatchSource<Arg>, options?: import("./query2.js").QueryObserverOptionsCustom<A_9, E_4, A_9, A_9, import("@tanstack/vue-query").QueryKey, never> | undefined): readonly [ComputedRef<import("@effect-rx/rx/Result").Result<A_9, E_4>>, ComputedRef<A_9 | undefined>, (options?: import("@tanstack/vue-query").RefetchOptions) => Effect<import("@tanstack/vue-query").QueryObserverResult<A_9, import("./query2.js").KnownFiberFailure<E_4>>>, import("@tanstack/vue-query").UseQueryReturnType<any, any>];
|
|
67
|
-
};
|
|
68
|
-
useSafeMutation: {
|
|
69
|
-
<I, E_5, A_10, R_5, Request_9 extends TaggedRequestClassAny>(self: RequestHandlerWithInput<I, A_10, E_5, R_5, Request_9>, options?: import("./mutate2.js").MutationOptions<A_10, I>): readonly [Readonly<Ref<import("./mutate2.js").MutationResult<A_10, E_5>>>, (i: I) => Effect<A_10, E_5, R_5>];
|
|
70
|
-
<E_6, A_11, R_6, Request_10 extends TaggedRequestClassAny>(self: RequestHandler<A_11, E_6, R_6, Request_10>, options?: import("./mutate2.js").MutationOptions<A_11>): readonly [Readonly<Ref<import("./mutate2.js").MutationResult<A_11, E_6>>>, Effect<A_11, E_6, R_6>];
|
|
71
|
-
};
|
|
72
|
-
};
|
|
73
|
-
export {};
|
|
74
|
-
//# sourceMappingURL=makeClient2.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"makeClient2.d.ts","sourceRoot":"","sources":["../src/makeClient2.ts"],"names":[],"mappings":"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"}
|