katanakit-js 2.14.2 → 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/README.md +67 -7
- package/dist/adapters/assistant/assistant.service.js.map +1 -1
- package/dist/adapters/astro/astro.service.js.map +1 -1
- package/dist/adapters/astro/rss.service.d.ts.map +1 -1
- package/dist/adapters/express/app.d.ts +2 -3
- package/dist/adapters/express/app.d.ts.map +1 -1
- package/dist/adapters/express/products.controller.d.ts.map +1 -1
- package/dist/adapters/express/router.d.ts.map +1 -1
- package/dist/adapters/express/server.d.ts.map +1 -1
- package/dist/adapters/express/server.js.map +1 -1
- package/dist/adapters/nuxt/nuxt.service.js.map +1 -1
- package/dist/adapters/telegram/telegram.service.js.map +1 -1
- package/dist/adapters/vue/index.d.ts +1 -0
- package/dist/adapters/vue/index.d.ts.map +1 -1
- package/dist/adapters/vue/index.js +1 -0
- package/dist/adapters/vue/index.js.map +1 -1
- package/dist/adapters/vue/query.d.ts +115 -0
- package/dist/adapters/vue/query.d.ts.map +1 -0
- package/dist/adapters/vue/query.js +199 -0
- package/dist/adapters/vue/query.js.map +1 -0
- package/dist/adapters/whatsapp/whatsapp.service.d.ts.map +1 -1
- package/dist/adapters/whatsapp/whatsapp.service.js.map +1 -1
- package/dist/config/seo.service.d.ts.map +1 -1
- package/dist/config/seo.service.js.map +1 -1
- package/dist/core/index.d.ts +1 -0
- package/dist/core/index.d.ts.map +1 -1
- package/dist/core/index.js +1 -0
- package/dist/core/index.js.map +1 -1
- package/dist/core/services/agent.service.js.map +1 -1
- package/dist/core/services/assistant.service.js.map +1 -1
- package/dist/core/services/dates.service.js.map +1 -1
- package/dist/core/services/formatter.service.js.map +1 -1
- package/dist/core/services/geometry.service.js.map +1 -1
- package/dist/core/services/http.service.js.map +1 -1
- package/dist/core/services/logger.service.js.map +1 -1
- package/dist/core/services/query.service.d.ts +136 -0
- package/dist/core/services/query.service.d.ts.map +1 -0
- package/dist/core/services/query.service.js +377 -0
- package/dist/core/services/query.service.js.map +1 -0
- package/dist/core/services/reactive.service.d.ts.map +1 -1
- package/dist/core/services/reactive.service.js.map +1 -1
- package/dist/infrastructure/dom/dom.service.d.ts.map +1 -1
- package/dist/infrastructure/observer/observer.service.d.ts.map +1 -1
- package/dist/infrastructure/observer/observer.service.js.map +1 -1
- package/dist/infrastructure/sensors/sensors.service.d.ts.map +1 -1
- package/dist/infrastructure/sensors/sensors.service.js.map +1 -1
- package/dist/infrastructure/storage/storage.service.d.ts.map +1 -1
- package/dist/infrastructure/storage/storage.service.js.map +1 -1
- package/dist/infrastructure/theme/theme.service.d.ts.map +1 -1
- package/dist/infrastructure/theme/theme.service.js.map +1 -1
- package/dist/infrastructure/viewport/viewport.service.d.ts +1 -1
- package/dist/infrastructure/viewport/viewport.service.d.ts.map +1 -1
- package/dist/infrastructure/viewport/viewport.service.js +1 -1
- package/dist/infrastructure/viewport/viewport.service.js.map +1 -1
- package/dist/prisma/db.d.ts.map +1 -1
- package/dist/prisma/db.js.map +1 -1
- package/dist/prisma/use-prisma.d.ts.map +1 -1
- package/dist/prisma/use-prisma.js.map +1 -1
- package/dist/types/index.d.ts.map +1 -1
- package/package.json +22 -7
package/README.md
CHANGED
|
@@ -29,7 +29,7 @@ In the browser, use jsDelivr **`/+esm`** so named exports and dependencies resol
|
|
|
29
29
|
| **esm.sh** | `https://esm.sh/katanakit-js` |
|
|
30
30
|
| **Raw ESM file** | `https://cdn.jsdelivr.net/npm/katanakit-js/dist/index.js` (needs bundler or import map) |
|
|
31
31
|
|
|
32
|
-
Pin a version in production (e.g. `@2.
|
|
32
|
+
Pin a version in production (e.g. `@2.14.2/+esm`). There is no IIFE/UMD build.
|
|
33
33
|
|
|
34
34
|
## Quick Start
|
|
35
35
|
|
|
@@ -199,6 +199,61 @@ See [`examples/api-manager/demo.ts`](https://github.com/senseikatana/katanakit-j
|
|
|
199
199
|
covering all CRUD operations, auth injection, URL building, and error handling
|
|
200
200
|
against a real API (JSONPlaceholder).
|
|
201
201
|
|
|
202
|
+
## QueryClient — Cached Data Fetching
|
|
203
|
+
|
|
204
|
+
The QueryClient is a data-fetching and caching layer built on the reactive kernel.
|
|
205
|
+
It integrates with the API manager — your `queryFn` typically calls `useGetApi` or
|
|
206
|
+
`useFetch` and returns the Safe Result.
|
|
207
|
+
|
|
208
|
+
```ts
|
|
209
|
+
import { QueryClient, useQueryClient } from "katanakit-js";
|
|
210
|
+
import { useGetApi } from "katanakit-js";
|
|
211
|
+
|
|
212
|
+
// Initialize once (global singleton).
|
|
213
|
+
const qc = useQueryClient();
|
|
214
|
+
|
|
215
|
+
// Fetch with cache, stale-while-revalidate, retry, and dedup.
|
|
216
|
+
const pokemon = await qc.fetchQuery<Pokemon>({
|
|
217
|
+
queryKey: ["pokemon", 25],
|
|
218
|
+
queryFn: () => useGetApi<Pokemon>("pokeapi", "pokemonById", { params: { id: 25 } }),
|
|
219
|
+
staleTime: 60_000, // Cache is fresh for 60s.
|
|
220
|
+
retry: 3, // Retry 3 times on failure.
|
|
221
|
+
refetchOnWindowFocus: true,
|
|
222
|
+
});
|
|
223
|
+
```
|
|
224
|
+
|
|
225
|
+
### Vue composables
|
|
226
|
+
|
|
227
|
+
```vue
|
|
228
|
+
<script setup>
|
|
229
|
+
import { useQuery, useMutation, useQueryClient } from "katanakit-js/adapters/vue";
|
|
230
|
+
import { useGetApi, usePost } from "katanakit-js";
|
|
231
|
+
|
|
232
|
+
const qc = useQueryClient();
|
|
233
|
+
|
|
234
|
+
const { data, isLoading, error, refetch } = useQuery({
|
|
235
|
+
queryKey: () => ["users"],
|
|
236
|
+
queryFn: () => useGetApi<User[]>("myApi", "users"),
|
|
237
|
+
staleTime: 30_000,
|
|
238
|
+
});
|
|
239
|
+
|
|
240
|
+
const { mutate, isLoading: mutating } = useMutation({
|
|
241
|
+
mutationFn: (name: string) => usePost("myApi", "createUser", { name }),
|
|
242
|
+
onSuccess: () => qc.invalidateQueries({ queryKey: ["users"] }),
|
|
243
|
+
});
|
|
244
|
+
</script>
|
|
245
|
+
```
|
|
246
|
+
|
|
247
|
+
### Features
|
|
248
|
+
|
|
249
|
+
- **Cache with GC** — unused queries are garbage-collected after `cacheTime` (default: 5 min).
|
|
250
|
+
- **Stale-while-revalidate** — returns cached data immediately, refetches in background.
|
|
251
|
+
- **Retry with exponential backoff** — configurable `retry` count and `retryDelay`.
|
|
252
|
+
- **Deduplication** — concurrent requests for the same key share a single fetch.
|
|
253
|
+
- **Query invalidation** — `invalidateQueries` marks queries stale and refetches active ones.
|
|
254
|
+
- **Direct cache updates** — `setQueryData` for optimistic updates.
|
|
255
|
+
- **Prefetch** — `prefetchQuery` anticipates user actions.
|
|
256
|
+
|
|
202
257
|
## Features
|
|
203
258
|
|
|
204
259
|
- **Safe Results** — HTTP (and other fallible) operations return `{ data, error, ok }` instead of throwing
|
|
@@ -222,6 +277,7 @@ or `result.error`.
|
|
|
222
277
|
|
|
223
278
|
```ts
|
|
224
279
|
import { useInitAgent, useChat, useRunAgent } from "katanakit-js";
|
|
280
|
+
import fs from "node:fs/promises";
|
|
225
281
|
|
|
226
282
|
// Register once. apiKey falls back to process.env.DASHSCOPE_API_KEY.
|
|
227
283
|
useInitAgent({ model: "qwen3.8-max" });
|
|
@@ -302,6 +358,7 @@ TELEGRAM_BOT_TOKEN=
|
|
|
302
358
|
WHATSAPP_TOKEN=
|
|
303
359
|
WHATSAPP_PHONE_NUMBER_ID=
|
|
304
360
|
WHATSAPP_VERIFY_TOKEN=
|
|
361
|
+
WHATSAPP_APP_SECRET=
|
|
305
362
|
DATABASE_URL=
|
|
306
363
|
```
|
|
307
364
|
|
|
@@ -481,7 +538,7 @@ import { useUnwrap } from "katanakit-js/adapters/nuxt"; // Nuxt only
|
|
|
481
538
|
</script>
|
|
482
539
|
```
|
|
483
540
|
|
|
484
|
-
See [Getting Started](https://senseikatana.
|
|
541
|
+
See [Getting Started](https://senseikatana.com/katanakit-js/docs/guides/getting-started/) for full recipes.
|
|
485
542
|
|
|
486
543
|
## Framework Adapters
|
|
487
544
|
|
|
@@ -497,11 +554,14 @@ See [Getting Started](https://senseikatana.github.io/katanakit-js/docs/guides/ge
|
|
|
497
554
|
|
|
498
555
|
## Documentation
|
|
499
556
|
|
|
500
|
-
|
|
501
|
-
|
|
502
|
-
- [
|
|
503
|
-
- [
|
|
504
|
-
- [
|
|
557
|
+
The docs site is deployed with Render at [senseikatana.com/katanakit-js](https://senseikatana.com/katanakit-js/).
|
|
558
|
+
|
|
559
|
+
- [Getting Started](https://senseikatana.com/katanakit-js/docs/guides/getting-started/)
|
|
560
|
+
- [Architecture](https://senseikatana.com/katanakit-js/docs/guides/architecture/)
|
|
561
|
+
- [UI Kit (Katana UI)](https://senseikatana.com/katanakit-js/docs/ui-kit/)
|
|
562
|
+
- [API Reference](https://senseikatana.com/katanakit-js/docs/api/)
|
|
563
|
+
- [Roadmap](https://senseikatana.com/katanakit-js/docs/guides/roadmap/)
|
|
564
|
+
- [Changelog](https://senseikatana.com/katanakit-js/docs/changelog/)
|
|
505
565
|
|
|
506
566
|
## License
|
|
507
567
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"assistant.service.js","sourceRoot":"","sources":["../../../src/adapters/assistant/assistant.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoD,MAAM,EAAE,MAAM,SAAS,CAAC;AACnF,OAAO,SAAS,MAAM,oBAAoB,CAAC;AAE3C,OAAO,EACN,aAAa,EACb,QAAQ,EACR,eAAe,EACf,gBAAgB,GAChB,MAAM,0CAA0C,CAAC;AAClD,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAUzE,2DAA2D;AAC3D,MAAM,oBAAoB,GAAG,SAAS,CAAC;IACtC,QAAQ,EAAE,MAAM;IAChB,GAAG,EAAE,EAAE;IACP,eAAe,EAAE,SAAS;IAC1B,aAAa,EAAE,KAAK;IACpB,OAAO,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,mBAAmB,EAAE,MAAM,EAAE,GAAG,EAAE,EAAE;CACxF,CAAC,CAAC;AAEH,sEAAsE;AACtE,MAAM,UAAU,wBAAwB,CAAC,
|
|
1
|
+
{"version":3,"file":"assistant.service.js","sourceRoot":"","sources":["../../../src/adapters/assistant/assistant.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"astro.service.js","sourceRoot":"","sources":["../../../src/adapters/astro/astro.service.ts"],"names":[],"mappings":"AAQA;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,UAAU,iBAAiB,CAChC,KAAU,EACV,
|
|
1
|
+
{"version":3,"file":"astro.service.js","sourceRoot":"","sources":["../../../src/adapters/astro/astro.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rss.service.d.ts","sourceRoot":"","sources":["../../../src/adapters/astro/rss.service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAuG1E;;;;;;;;;;;;;;;;;GAiBG;AACH,eAAO,MAAM,mBAAmB,
|
|
1
|
+
{"version":3,"file":"rss.service.d.ts","sourceRoot":"","sources":["../../../src/adapters/astro/rss.service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAuG1E;;;;;;;;;;;;;;;;;GAiBG;AACH,eAAO,MAAM,mBAAmB,GAAI,QAAQ,SAAS,KAAG,SAsBvD,CAAC;AAEF;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,kBAAkB,GAAI,QAAQ,IAAI,CAAC,SAAS,EAAE,OAAO,GAAG,SAAS,CAAC,KAAG,MAGjF,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,eAAO,MAAM,yBAAyB,GACrC,QAAQ,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,GAAG;IAClC,KAAK,EAAE,OAAO,EAAE,GAAG,CAAC,MAAM,OAAO,EAAE,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;CAC1D,KACC,CAAC,CAAC,OAAO,EAAE;IAAE,IAAI,CAAC,EAAE,GAAG,GAAG,MAAM,CAAA;CAAE,KAAK,OAAO,CAAC,QAAQ,CAAC,CAsC1D,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,eAAO,MAAM,mCAAmC,GAC/C,YAAY,UAAU,EACtB,OAAO,OAAO,EAAE,GAAG,CAAC,MAAM,OAAO,EAAE,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,KACvD,CAAC,CAAC,OAAO,EAAE;IAAE,IAAI,CAAC,EAAE,GAAG,GAAG,MAAM,CAAA;CAAE,KAAK,OAAO,CAAC,QAAQ,CAAC,CAS1D,CAAC"}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import type { Application } from "express";
|
|
2
|
-
import { useExpressGetApp, useExpressStart } from "./server.js";
|
|
3
2
|
/**
|
|
4
3
|
* Re-exported Express application instance.
|
|
5
4
|
*
|
|
@@ -19,7 +18,7 @@ export declare const app: Application;
|
|
|
19
18
|
* const expressApp = useGetApp();
|
|
20
19
|
* ```
|
|
21
20
|
*/
|
|
22
|
-
export declare const useGetApp:
|
|
21
|
+
export declare const useGetApp: () => Application;
|
|
23
22
|
/**
|
|
24
23
|
* Start the Express HTTP server.
|
|
25
24
|
*
|
|
@@ -29,5 +28,5 @@ export declare const useGetApp: typeof useExpressGetApp;
|
|
|
29
28
|
* useStart(3000, "localhost");
|
|
30
29
|
* ```
|
|
31
30
|
*/
|
|
32
|
-
export declare const useStart:
|
|
31
|
+
export declare const useStart: (port?: number, host?: string) => void;
|
|
33
32
|
//# sourceMappingURL=app.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"app.d.ts","sourceRoot":"","sources":["../../../src/adapters/express/app.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"app.d.ts","sourceRoot":"","sources":["../../../src/adapters/express/app.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAI3C;;;;;;;;GAQG;AACH,eAAO,MAAM,GAAG,EAAE,WAAgC,CAAC;AAEnD;;;;;;;;GAQG;AACH,eAAO,MAAM,SAAS,mBAAmB,CAAC;AAE1C;;;;;;;;GAQG;AACH,eAAO,MAAM,QAAQ,wCAAkB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"products.controller.d.ts","sourceRoot":"","sources":["../../../src/adapters/express/products.controller.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAOjD;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,wBAAwB,
|
|
1
|
+
{"version":3,"file":"products.controller.d.ts","sourceRoot":"","sources":["../../../src/adapters/express/products.controller.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAOjD;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,wBAAwB,GAAI,UAAU,OAAO,EAAE,UAAU,QAAQ,KAAG,IAEhF,CAAC;AAEF;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,wBAAwB,GAAI,SAAS,OAAO,EAAE,UAAU,QAAQ,KAAG,IAU/E,CAAC;AAEF;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,uBAAuB,GAAI,SAAS,OAAO,EAAE,UAAU,QAAQ,KAAG,IAc9E,CAAC;AAEF;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,uBAAuB,GAAI,SAAS,OAAO,EAAE,UAAU,QAAQ,KAAG,IAiB9E,CAAC;AAEF;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,uBAAuB,GAAI,SAAS,OAAO,EAAE,UAAU,QAAQ,KAAG,IAW9E,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"router.d.ts","sourceRoot":"","sources":["../../../src/adapters/express/router.ts"],"names":[],"mappings":"AAEA,QAAA,MAAM,MAAM,4CAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"router.d.ts","sourceRoot":"","sources":["../../../src/adapters/express/router.ts"],"names":[],"mappings":"AAEA,QAAA,MAAM,MAAM,4CAAW,CAAC;AAexB,eAAe,MAAM,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../../src/adapters/express/server.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../../src/adapters/express/server.ts"],"names":[],"mappings":"AAGA,OAAgB,EAAE,KAAK,WAAW,EAAqB,KAAK,OAAO,EAAiB,MAAM,SAAS,CAAC;AAapG;;;;;;GAMG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAElE;AAkFD;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,gBAAgB,QAAO,WAQnC,CAAC;AAEF;;;;;;;;;;GAUG;AACH,eAAO,MAAM,kBAAkB,QAAO,IAIrC,CAAC;AAEF;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,eAAe,GAAI,aAAW,EAAE,aAAkB,KAAG,IAUjE,CAAC;AAEF;;;;;;;;;;GAUG;AACH,eAAO,MAAM,gBAAgB,QAAO,WAAiC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../../../src/adapters/express/server.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../../../src/adapters/express/server.ts"],"names":[],"mappings":"AAEA,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,OAA6E,MAAM,SAAS,CAAC;AAEpG,OAAO,EAAE,SAAS,EAAE,MAAM,uCAAuC,CAAC;AAClE,OAAO,MAAM,MAAM,aAAa,CAAC;AAEjC,iDAAiD;AACjD,IAAI,GAAG,GAAuB,IAAI,CAAC;AACnC,IAAI,OAAO,GAAG,KAAK,CAAC;AACpB,IAAI,SAAS,GAAG,KAAK,CAAC;AAKtB;;;;;;GAMG;AACH,MAAM,UAAU,aAAa,CAAC,OAAgB;IAC7C,OAAQ,OAAyC,CAAC,OAAO,CAAC;AAC3D,CAAC;AAED;;;;;;;;;;;GAWG;AACH,SAAS,0BAA0B,CAAC,UAAuB;IAC1D,MAAM,OAAO,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,YAAY,EAAE,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;SACjF,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;SAC9B,MAAM,CAAC,OAAO,CAAC,CAAC;IAElB,UAAU,CAAC,GAAG,CACb,IAAI,CAAC;QACJ,MAAM,EAAE,OAAO;QACf,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,CAAC;KACzC,CAAC,CACF,CAAC;IACF,UAAU,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;IACnC,UAAU,CAAC,GAAG,CACb,OAAO,CAAC,IAAI,CAAC;QACZ,KAAK,EAAE,OAAO;QACd,MAAM,EAAE,CAAC,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE;YACzB,GAA0B,CAAC,OAAO,GAAG,GAAG,CAAC;QAC3C,CAAC;KACD,CAAC,CACF,CAAC;IACF,UAAU,CAAC,GAAG,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC;AACxE,CAAC;AAED;;;;;;;;;;GAUG;AACH,SAAS,qBAAqB,CAAC,UAAuB;IACrD,UAAU,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC,QAAiB,EAAE,QAAkB,EAAE,EAAE;QACnE,OAAO,QAAQ,CAAC,IAAI,CAAC;YACpB,MAAM,EAAE,IAAI;YACZ,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;SACnC,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,UAAU,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;AAC7B,CAAC;AAED;;;;;;;;;;;GAWG;AACH,SAAS,4BAA4B,CAAC,UAAuB;IAC5D,UAAU,CAAC,GAAG,CAAC,CAAC,GAAU,EAAE,IAAa,EAAE,GAAa,EAAE,KAAmB,EAAE,EAAE;QAChF,SAAS,CAAC,OAAO,EAAE,kBAAkB,EAAE,GAAG,CAAC,CAAC;QAC5C,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,uBAAuB,EAAE,CAAC,CAAC;IAC1D,CAAC,CAAC,CAAC;IAEH,UAAU,CAAC,GAAG,CAAC,CAAC,IAAa,EAAE,GAAa,EAAE,EAAE;QAC/C,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC,CAAC;IAC9C,CAAC,CAAC,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,GAAgB,EAAE;IACjD,IAAI,GAAG;QAAE,OAAO,GAAG,CAAC;IAEpB,GAAG,GAAG,OAAO,EAAE,CAAC;IAChB,0BAA0B,CAAC,GAAG,CAAC,CAAC;IAChC,qBAAqB,CAAC,GAAG,CAAC,CAAC;IAE3B,OAAO,GAAG,CAAC;AACZ,CAAC,CAAC;AAEF;;;;;;;;;;GAUG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,GAAS,EAAE;IAC5C,IAAI,SAAS;QAAE,OAAO;IACtB,SAAS,GAAG,IAAI,CAAC;IACjB,4BAA4B,CAAC,gBAAgB,EAAE,CAAC,CAAC;AAClD,CAAC,CAAC;AAEF;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,WAAW,EAAQ,EAAE;IACxE,IAAI,OAAO;QAAE,OAAO;IACpB,OAAO,GAAG,IAAI,CAAC;IAEf,kBAAkB,EAAE,CAAC;IACrB,MAAM,UAAU,GAAG,gBAAgB,EAAE,CAAC;IAEtC,UAAU,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE;QAClC,SAAS,CAAC,MAAM,EAAE,4BAA4B,IAAI,IAAI,IAAI,EAAE,CAAC,CAAC;IAC/D,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC;AAEF;;;;;;;;;;GAUG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,GAAgB,EAAE,CAAC,gBAAgB,EAAE,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nuxt.service.js","sourceRoot":"","sources":["../../../src/adapters/nuxt/nuxt.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAU5C,IAAI,iBAAmD,CAAC;AAExD,SAAS,oBAAoB;IAC5B,IAAI,iBAAiB,KAAK,SAAS;QAAE,OAAO,iBAAiB,CAAC;IAC9D,IAAI,CAAC;QACJ,MAAM,OAAO,GAAG,aAAa,CAAC,
|
|
1
|
+
{"version":3,"file":"nuxt.service.js","sourceRoot":"","sources":["../../../src/adapters/nuxt/nuxt.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"telegram.service.js","sourceRoot":"","sources":["../../../src/adapters/telegram/telegram.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,0CAA0C,CAAC;AACpE,OAAO,EAAE,SAAS,EAAE,MAAM,uCAAuC,CAAC;AAClE,OAAO,EAAE,QAAQ,EAAE,MAAM,sCAAsC,CAAC;AAGhE,yCAAyC;AACzC,MAAM,CAAC,MAAM,iBAAiB,GAAG,0BAA0B,CAAC;AAW5D,sCAAsC;AACtC,IAAI,MAAM,GAA0B,IAAI,CAAC;AAEzC,8CAA8C;AAC9C,SAAS,SAAS;IACjB,IAAI,CAAC,MAAM,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CAAC,0DAA0D,CAAC,CAAC;IAC7E,CAAC;IACD,OAAO,MAAM,CAAC;AACf,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,eAAe,CAAC,GAAmB;IAClD,MAAM,GAAG,EAAE,GAAG,GAAG,EAAE,CAAC;AACrB,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAAC,MAAc,EAAE,IAAY;IACxE,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,GAAG,SAAS,EAAE,CAAC;IAC1C,OAAO,KAAK,CAAC,GAAG,UAAU,IAAI,iBAAiB,OAAO,KAAK,cAAc,EAAE;QAC1E,MAAM,EAAE,MAAM;QACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;QAC/C,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;KAC/C,CAAC,CAAC;AACJ,CAAC;AAQD;;;;;;;;;;GAUG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC5C,MAAe,EACf,
|
|
1
|
+
{"version":3,"file":"telegram.service.js","sourceRoot":"","sources":["../../../src/adapters/telegram/telegram.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,0CAA0C,CAAC;AACpE,OAAO,EAAE,SAAS,EAAE,MAAM,uCAAuC,CAAC;AAClE,OAAO,EAAE,QAAQ,EAAE,MAAM,sCAAsC,CAAC;AAGhE,yCAAyC;AACzC,MAAM,CAAC,MAAM,iBAAiB,GAAG,0BAA0B,CAAC;AAW5D,sCAAsC;AACtC,IAAI,MAAM,GAA0B,IAAI,CAAC;AAEzC,8CAA8C;AAC9C,SAAS,SAAS;IACjB,IAAI,CAAC,MAAM,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CAAC,0DAA0D,CAAC,CAAC;IAC7E,CAAC;IACD,OAAO,MAAM,CAAC;AACf,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,eAAe,CAAC,GAAmB;IAClD,MAAM,GAAG,EAAE,GAAG,GAAG,EAAE,CAAC;AACrB,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAAC,MAAc,EAAE,IAAY;IACxE,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,GAAG,SAAS,EAAE,CAAC;IAC1C,OAAO,KAAK,CAAC,GAAG,UAAU,IAAI,iBAAiB,OAAO,KAAK,cAAc,EAAE;QAC1E,MAAM,EAAE,MAAM;QACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;QAC/C,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;KAC/C,CAAC,CAAC;AACJ,CAAC;AAQD;;;;;;;;;;GAUG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC5C,MAAe,EACf,QAAyB,QAAQ;IAEjC,MAAM,OAAO,GAAI,MAAwC,EAAE,OAAO,CAAC;IACnE,IAAI,CAAC,OAAO,EAAE,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE;QAAE,OAAO;IAEzD,MAAM,SAAS,GAAG,YAAY,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;IAChD,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,SAAS,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IAEpD,IAAI,MAAM,CAAC,EAAE,EAAE,CAAC;QACf,MAAM,sBAAsB,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAClE,CAAC;AACF,CAAC;AASD;;;;;;;;;;GAUG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAAC,UAAkC,EAAE;IACjF,MAAM,EAAE,UAAU,GAAG,IAAI,EAAE,MAAM,EAAE,KAAK,GAAG,QAAQ,EAAE,GAAG,OAAO,CAAC;IAChE,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,GAAG,SAAS,EAAE,CAAC;IAC1C,MAAM,IAAI,GAAG,UAAU,IAAI,iBAAiB,CAAC;IAE7C,IAAI,MAAM,GAAG,CAAC,CAAC;IAEf,OAAO,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC;QACzB,IAAI,CAAC;YACJ,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,IAAI,OAAO,KAAK,iCAAiC,MAAM,EAAE,EAAE;gBAC1F,MAAM;aACN,CAAC,CAAC;YAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBAClB,MAAM,IAAI,KAAK,CAAC,mBAAmB,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;YACvD,CAAC;YAED,MAAM,IAAI,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAGlC,CAAC;YAEF,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,MAAM,IAAI,EAAE,EAAE,CAAC;gBACxC,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC;gBAChD,MAAM,uBAAuB,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;YAC9C,CAAC;QACF,CAAC;QAAC,OAAO,KAAc,EAAE,CAAC;YACzB,IAAI,MAAM,EAAE,OAAO;gBAAE,MAAM;YAC3B,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACvE,SAAS,CAAC,OAAO,EAAE,cAAc,OAAO,EAAE,CAAC,CAAC;QAC7C,CAAC;QAED,MAAM,QAAQ,CAAC,UAAU,CAAC,CAAC;IAC5B,CAAC;AACF,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/adapters/vue/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/adapters/vue/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,kBAAkB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/adapters/vue/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/adapters/vue/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,kBAAkB,CAAC"}
|
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
import { type MaybeRef, type Ref } from "vue";
|
|
2
|
+
import { type QueryClient, type QueryKey } from "../../core/services/query.service.js";
|
|
3
|
+
import type { ApiError, FetchResult } from "../../types/index.js";
|
|
4
|
+
/** Reactive return value of `useQuery`. */
|
|
5
|
+
export interface UseQueryReturn<T> {
|
|
6
|
+
/** The resolved data on success, `null` otherwise. */
|
|
7
|
+
data: Ref<T | null>;
|
|
8
|
+
/** The Safe Result error on failure, `null` otherwise. */
|
|
9
|
+
error: Ref<ApiError | null>;
|
|
10
|
+
/** Whether the query is currently fetching. */
|
|
11
|
+
isLoading: Ref<boolean>;
|
|
12
|
+
/** Whether the query succeeded with data. */
|
|
13
|
+
isSuccess: Ref<boolean>;
|
|
14
|
+
/** Whether the query failed with an error. */
|
|
15
|
+
isError: Ref<boolean>;
|
|
16
|
+
/** Whether the cached data is stale. */
|
|
17
|
+
isStale: Ref<boolean>;
|
|
18
|
+
/** Current status of the query. */
|
|
19
|
+
status: Ref<"idle" | "loading" | "success" | "error">;
|
|
20
|
+
/** Manually refetch the query. */
|
|
21
|
+
refetch: () => Promise<void>;
|
|
22
|
+
}
|
|
23
|
+
/** Configuration for `useQuery` (Vue reactive version). */
|
|
24
|
+
export interface UseQueryConfig<T = unknown> {
|
|
25
|
+
/** Reactive query key — the query refetches when it changes. */
|
|
26
|
+
queryKey: MaybeRef<QueryKey>;
|
|
27
|
+
/** Fetcher function returning a Safe Result. */
|
|
28
|
+
queryFn: () => Promise<FetchResult<T>>;
|
|
29
|
+
/** Time in ms before cached data is stale (default: 0). */
|
|
30
|
+
staleTime?: MaybeRef<number>;
|
|
31
|
+
/** Time in ms to keep unused data (default: 5 min). */
|
|
32
|
+
cacheTime?: number;
|
|
33
|
+
/** Retry count on failure (default: 3). */
|
|
34
|
+
retry?: number;
|
|
35
|
+
/** Base delay for exponential backoff (default: 1000). */
|
|
36
|
+
retryDelay?: number;
|
|
37
|
+
/** Refetch on window focus (default: true). */
|
|
38
|
+
refetchOnWindowFocus?: MaybeRef<boolean>;
|
|
39
|
+
/** Whether the query is enabled (default: true). */
|
|
40
|
+
enabled?: MaybeRef<boolean>;
|
|
41
|
+
}
|
|
42
|
+
/** Configuration for `useMutation`. */
|
|
43
|
+
export interface UseMutationConfig<TData = unknown, TVariables = unknown> {
|
|
44
|
+
mutationFn: (variables: TVariables) => Promise<FetchResult<TData>>;
|
|
45
|
+
onSuccess?: (data: TData, variables: TVariables) => void;
|
|
46
|
+
onError?: (error: ApiError, variables: TVariables) => void;
|
|
47
|
+
onSettled?: (data: TData | null, error: ApiError | null, variables: TVariables) => void;
|
|
48
|
+
}
|
|
49
|
+
/** Reactive return value of `useMutation`. */
|
|
50
|
+
export interface UseMutationReturn<TData, TVariables> {
|
|
51
|
+
/** The resolved data from the last mutation. */
|
|
52
|
+
data: Ref<TData | null>;
|
|
53
|
+
/** The error from the last mutation. */
|
|
54
|
+
error: Ref<ApiError | null>;
|
|
55
|
+
/** Whether a mutation is in flight. */
|
|
56
|
+
isLoading: Ref<boolean>;
|
|
57
|
+
/** Whether the last mutation succeeded. */
|
|
58
|
+
isSuccess: Ref<boolean>;
|
|
59
|
+
/** Whether the last mutation failed. */
|
|
60
|
+
isError: Ref<boolean>;
|
|
61
|
+
/** Current status of the mutation. */
|
|
62
|
+
status: Ref<"idle" | "loading" | "success" | "error">;
|
|
63
|
+
/** Execute the mutation. */
|
|
64
|
+
mutate: (variables: TVariables) => Promise<void>;
|
|
65
|
+
/** Reset the mutation state. */
|
|
66
|
+
reset: () => void;
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* Vue composable that wraps the {@link QueryClient} with reactive state.
|
|
70
|
+
* Integrates with the API manager — your `queryFn` typically calls
|
|
71
|
+
* `useGetApi` or `useFetch` and returns the Safe Result.
|
|
72
|
+
*
|
|
73
|
+
* @param config - Query configuration with reactive query key.
|
|
74
|
+
* @param client - Optional QueryClient instance (uses global singleton by default).
|
|
75
|
+
* @returns Reactive `{ data, error, isLoading, isSuccess, isError, isStale, status, refetch }`.
|
|
76
|
+
*
|
|
77
|
+
* @example
|
|
78
|
+
* ```vue
|
|
79
|
+
* <script setup>
|
|
80
|
+
* import { useQuery } from "katanakit-js/adapters/vue";
|
|
81
|
+
* import { useGetApi } from "katanakit-js";
|
|
82
|
+
*
|
|
83
|
+
* const { data, isLoading, error } = useQuery({
|
|
84
|
+
* queryKey: () => ["pokemon", id.value],
|
|
85
|
+
* queryFn: () => useGetApi("pokeapi", "pokemonById", { params: { id: id.value } }),
|
|
86
|
+
* staleTime: 60_000,
|
|
87
|
+
* });
|
|
88
|
+
* </script>
|
|
89
|
+
* ```
|
|
90
|
+
*/
|
|
91
|
+
export declare function useQuery<T>(config: UseQueryConfig<T>, client?: QueryClient): UseQueryReturn<T>;
|
|
92
|
+
/**
|
|
93
|
+
* Vue composable for mutations (POST/PUT/PATCH/DELETE).
|
|
94
|
+
* Does not cache — returns a `mutate` function that executes the mutation.
|
|
95
|
+
*
|
|
96
|
+
* @param config - Mutation configuration.
|
|
97
|
+
* @param client - Optional QueryClient instance.
|
|
98
|
+
* @returns Reactive `{ data, error, isLoading, isSuccess, isError, status, mutate, reset }`.
|
|
99
|
+
*
|
|
100
|
+
* @example
|
|
101
|
+
* ```vue
|
|
102
|
+
* <script setup>
|
|
103
|
+
* import { useMutation, useQueryClient } from "katanakit-js/adapters/vue";
|
|
104
|
+
* import { usePost } from "katanakit-js";
|
|
105
|
+
*
|
|
106
|
+
* const qc = useQueryClient();
|
|
107
|
+
* const { mutate, isLoading } = useMutation({
|
|
108
|
+
* mutationFn: (name: string) => usePost("myApi", "createUser", { name }),
|
|
109
|
+
* onSuccess: () => qc.invalidateQueries({ queryKey: ["users"] }),
|
|
110
|
+
* });
|
|
111
|
+
* </script>
|
|
112
|
+
* ```
|
|
113
|
+
*/
|
|
114
|
+
export declare function useMutation<TData = unknown, TVariables = unknown>(config: UseMutationConfig<TData, TVariables>, client?: QueryClient): UseMutationReturn<TData, TVariables>;
|
|
115
|
+
//# sourceMappingURL=query.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"query.d.ts","sourceRoot":"","sources":["../../../src/adapters/vue/query.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,199 @@
|
|
|
1
|
+
import { onUnmounted, ref, shallowRef, toValue, watch } from "vue";
|
|
2
|
+
import { useQueryClient, } from "../../core/services/query.service.js";
|
|
3
|
+
// ============================================================
|
|
4
|
+
// useQuery
|
|
5
|
+
// ============================================================
|
|
6
|
+
/**
|
|
7
|
+
* Vue composable that wraps the {@link QueryClient} with reactive state.
|
|
8
|
+
* Integrates with the API manager — your `queryFn` typically calls
|
|
9
|
+
* `useGetApi` or `useFetch` and returns the Safe Result.
|
|
10
|
+
*
|
|
11
|
+
* @param config - Query configuration with reactive query key.
|
|
12
|
+
* @param client - Optional QueryClient instance (uses global singleton by default).
|
|
13
|
+
* @returns Reactive `{ data, error, isLoading, isSuccess, isError, isStale, status, refetch }`.
|
|
14
|
+
*
|
|
15
|
+
* @example
|
|
16
|
+
* ```vue
|
|
17
|
+
* <script setup>
|
|
18
|
+
* import { useQuery } from "katanakit-js/adapters/vue";
|
|
19
|
+
* import { useGetApi } from "katanakit-js";
|
|
20
|
+
*
|
|
21
|
+
* const { data, isLoading, error } = useQuery({
|
|
22
|
+
* queryKey: () => ["pokemon", id.value],
|
|
23
|
+
* queryFn: () => useGetApi("pokeapi", "pokemonById", { params: { id: id.value } }),
|
|
24
|
+
* staleTime: 60_000,
|
|
25
|
+
* });
|
|
26
|
+
* </script>
|
|
27
|
+
* ```
|
|
28
|
+
*/
|
|
29
|
+
export function useQuery(config, client) {
|
|
30
|
+
const qc = client ?? useQueryClient();
|
|
31
|
+
const data = shallowRef(null);
|
|
32
|
+
const error = ref(null);
|
|
33
|
+
const isLoading = ref(false);
|
|
34
|
+
const isSuccess = ref(false);
|
|
35
|
+
const isError = ref(false);
|
|
36
|
+
const isStale = ref(true);
|
|
37
|
+
const status = ref("idle");
|
|
38
|
+
let disposed = false;
|
|
39
|
+
let stopSubscription = null;
|
|
40
|
+
const syncFromState = (state) => {
|
|
41
|
+
if (disposed)
|
|
42
|
+
return;
|
|
43
|
+
data.value = state.data;
|
|
44
|
+
error.value = state.error;
|
|
45
|
+
isLoading.value = state.isLoading;
|
|
46
|
+
isSuccess.value = state.isSuccess;
|
|
47
|
+
isError.value = state.isError;
|
|
48
|
+
isStale.value = state.isStale;
|
|
49
|
+
status.value = state.status;
|
|
50
|
+
};
|
|
51
|
+
const runQuery = async () => {
|
|
52
|
+
if (disposed)
|
|
53
|
+
return;
|
|
54
|
+
const enabled = toValue(config.enabled) ?? true;
|
|
55
|
+
if (!enabled)
|
|
56
|
+
return;
|
|
57
|
+
const qKey = toValue(config.queryKey);
|
|
58
|
+
const staleTime = toValue(config.staleTime) ?? 0;
|
|
59
|
+
const refetchOnFocus = toValue(config.refetchOnWindowFocus) ?? true;
|
|
60
|
+
// Unsubscribe from previous key.
|
|
61
|
+
stopSubscription?.();
|
|
62
|
+
// Subscribe to state updates.
|
|
63
|
+
stopSubscription = qc.subscribe(qKey, (state) => {
|
|
64
|
+
syncFromState(state);
|
|
65
|
+
});
|
|
66
|
+
// Sync initial state.
|
|
67
|
+
const existing = qc.getQueryState(qKey);
|
|
68
|
+
if (existing)
|
|
69
|
+
syncFromState(existing);
|
|
70
|
+
// Fetch if needed.
|
|
71
|
+
try {
|
|
72
|
+
await qc.fetchQuery({
|
|
73
|
+
queryKey: qKey,
|
|
74
|
+
queryFn: config.queryFn,
|
|
75
|
+
staleTime,
|
|
76
|
+
cacheTime: config.cacheTime,
|
|
77
|
+
retry: config.retry,
|
|
78
|
+
retryDelay: config.retryDelay,
|
|
79
|
+
refetchOnWindowFocus: refetchOnFocus,
|
|
80
|
+
});
|
|
81
|
+
}
|
|
82
|
+
catch {
|
|
83
|
+
// Error is in state; no need to throw.
|
|
84
|
+
}
|
|
85
|
+
};
|
|
86
|
+
// Watch reactive query key for changes.
|
|
87
|
+
watch(() => toValue(config.queryKey), () => {
|
|
88
|
+
void runQuery();
|
|
89
|
+
}, { deep: true });
|
|
90
|
+
// Watch enabled flag.
|
|
91
|
+
if (typeof config.enabled === "object" && "value" in config.enabled) {
|
|
92
|
+
watch(() => toValue(config.enabled), (enabled) => {
|
|
93
|
+
if (enabled)
|
|
94
|
+
void runQuery();
|
|
95
|
+
});
|
|
96
|
+
}
|
|
97
|
+
// Initial fetch.
|
|
98
|
+
void runQuery();
|
|
99
|
+
// Cleanup on unmount.
|
|
100
|
+
onUnmounted(() => {
|
|
101
|
+
disposed = true;
|
|
102
|
+
stopSubscription?.();
|
|
103
|
+
});
|
|
104
|
+
const refetch = async () => {
|
|
105
|
+
const qKey = toValue(config.queryKey);
|
|
106
|
+
await qc.fetchQuery({
|
|
107
|
+
queryKey: qKey,
|
|
108
|
+
queryFn: config.queryFn,
|
|
109
|
+
staleTime: 0, // Force refetch.
|
|
110
|
+
cacheTime: config.cacheTime,
|
|
111
|
+
retry: config.retry,
|
|
112
|
+
retryDelay: config.retryDelay,
|
|
113
|
+
});
|
|
114
|
+
};
|
|
115
|
+
return { data, error, isLoading, isSuccess, isError, isStale, status, refetch };
|
|
116
|
+
}
|
|
117
|
+
// ============================================================
|
|
118
|
+
// useMutation
|
|
119
|
+
// ============================================================
|
|
120
|
+
/**
|
|
121
|
+
* Vue composable for mutations (POST/PUT/PATCH/DELETE).
|
|
122
|
+
* Does not cache — returns a `mutate` function that executes the mutation.
|
|
123
|
+
*
|
|
124
|
+
* @param config - Mutation configuration.
|
|
125
|
+
* @param client - Optional QueryClient instance.
|
|
126
|
+
* @returns Reactive `{ data, error, isLoading, isSuccess, isError, status, mutate, reset }`.
|
|
127
|
+
*
|
|
128
|
+
* @example
|
|
129
|
+
* ```vue
|
|
130
|
+
* <script setup>
|
|
131
|
+
* import { useMutation, useQueryClient } from "katanakit-js/adapters/vue";
|
|
132
|
+
* import { usePost } from "katanakit-js";
|
|
133
|
+
*
|
|
134
|
+
* const qc = useQueryClient();
|
|
135
|
+
* const { mutate, isLoading } = useMutation({
|
|
136
|
+
* mutationFn: (name: string) => usePost("myApi", "createUser", { name }),
|
|
137
|
+
* onSuccess: () => qc.invalidateQueries({ queryKey: ["users"] }),
|
|
138
|
+
* });
|
|
139
|
+
* </script>
|
|
140
|
+
* ```
|
|
141
|
+
*/
|
|
142
|
+
export function useMutation(config, client) {
|
|
143
|
+
const _qc = client ?? useQueryClient();
|
|
144
|
+
const data = shallowRef(null);
|
|
145
|
+
const error = ref(null);
|
|
146
|
+
const isLoading = ref(false);
|
|
147
|
+
const isSuccess = ref(false);
|
|
148
|
+
const isError = ref(false);
|
|
149
|
+
const status = ref("idle");
|
|
150
|
+
const mutate = async (variables) => {
|
|
151
|
+
isLoading.value = true;
|
|
152
|
+
isSuccess.value = false;
|
|
153
|
+
isError.value = false;
|
|
154
|
+
status.value = "loading";
|
|
155
|
+
try {
|
|
156
|
+
const result = await config.mutationFn(variables);
|
|
157
|
+
if (result.ok) {
|
|
158
|
+
data.value = result.data;
|
|
159
|
+
error.value = null;
|
|
160
|
+
isSuccess.value = true;
|
|
161
|
+
status.value = "success";
|
|
162
|
+
config.onSuccess?.(result.data, variables);
|
|
163
|
+
config.onSettled?.(result.data, null, variables);
|
|
164
|
+
}
|
|
165
|
+
else {
|
|
166
|
+
data.value = null;
|
|
167
|
+
error.value = result.error;
|
|
168
|
+
isError.value = true;
|
|
169
|
+
status.value = "error";
|
|
170
|
+
config.onError?.(result.error, variables);
|
|
171
|
+
config.onSettled?.(null, result.error, variables);
|
|
172
|
+
}
|
|
173
|
+
}
|
|
174
|
+
catch (err) {
|
|
175
|
+
const apiError = err instanceof Error
|
|
176
|
+
? { message: err.message, status: 0 }
|
|
177
|
+
: { message: String(err), status: 0 };
|
|
178
|
+
data.value = null;
|
|
179
|
+
error.value = apiError;
|
|
180
|
+
isError.value = true;
|
|
181
|
+
status.value = "error";
|
|
182
|
+
config.onError?.(apiError, variables);
|
|
183
|
+
config.onSettled?.(null, apiError, variables);
|
|
184
|
+
}
|
|
185
|
+
finally {
|
|
186
|
+
isLoading.value = false;
|
|
187
|
+
}
|
|
188
|
+
};
|
|
189
|
+
const reset = () => {
|
|
190
|
+
data.value = null;
|
|
191
|
+
error.value = null;
|
|
192
|
+
isLoading.value = false;
|
|
193
|
+
isSuccess.value = false;
|
|
194
|
+
isError.value = false;
|
|
195
|
+
status.value = "idle";
|
|
196
|
+
};
|
|
197
|
+
return { data, error, isLoading, isSuccess, isError, status, mutate, reset };
|
|
198
|
+
}
|
|
199
|
+
//# sourceMappingURL=query.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"query.js","sourceRoot":"","sources":["../../../src/adapters/vue/query.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"whatsapp.service.d.ts","sourceRoot":"","sources":["../../../src/adapters/whatsapp/whatsapp.service.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"whatsapp.service.d.ts","sourceRoot":"","sources":["../../../src/adapters/whatsapp/whatsapp.service.ts"],"names":[],"mappings":"AAEA,OAAO,EAAkD,MAAM,EAAE,MAAM,SAAS,CAAC;AAKjF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAG5D,mDAAmD;AACnD,eAAO,MAAM,iBAAiB,+BAA+B,CAAC;AAE9D,iCAAiC;AACjC,eAAO,MAAM,oBAAoB,UAAU,CAAC;AAE5C,wFAAwF;AACxF,eAAO,MAAM,iCAAiC,IAAI,CAAC;AAEnD,4DAA4D;AAC5D,MAAM,WAAW,cAAc;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,iFAAiF;IACjF,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,mEAAmE;AACnE,MAAM,MAAM,eAAe,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,eAAe,CAAC,CAAC;AAa5F;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,cAAc,GAAG,IAAI,CAEzD;AAUD;;;;;;;;;;;GAWG;AACH,wBAAgB,0BAA0B,CACzC,OAAO,EAAE,MAAM,GAAG,SAAS,EAC3B,eAAe,EAAE,MAAM,GAAG,SAAS,GACjC,OAAO,CAKT;AAED;;;;;;;;GAQG;AACH,wBAAgB,wBAAwB,CACvC,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,GACf,MAAM,GAAG,IAAI,CAMf;AAED;;;;;;GAMG;AACH,wBAAsB,sBAAsB,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,CAkBxF;AAkBD;;;;;;;;;;GAUG;AACH,wBAAsB,wBAAwB,CAC7C,OAAO,EAAE,OAAO,EAChB,KAAK,GAAE,eAA0B,GAC/B,OAAO,CAAC,IAAI,CAAC,CAef;AAED,+DAA+D;AAC/D,wBAAgB,uBAAuB,IAAI,MAAM,CAwChD;AAKD;;;;;;;;;;;;GAYG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,SAAO,EAAE,IAAI,SAAc,EAAE,SAAS,SAAc,GAAG,IAAI,CAM/F"}
|