katanakit-js 5.2.0 → 6.0.4

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.
Files changed (74) hide show
  1. package/README.md +62 -26
  2. package/dist/adapters/angular/fetch.js +1 -1
  3. package/dist/adapters/angular/fetch.js.map +1 -1
  4. package/dist/adapters/bun/dummyjson.service.d.ts +28 -5
  5. package/dist/adapters/bun/dummyjson.service.d.ts.map +1 -1
  6. package/dist/adapters/bun/dummyjson.service.js +22 -18
  7. package/dist/adapters/bun/dummyjson.service.js.map +1 -1
  8. package/dist/adapters/bun/main.js +3 -2
  9. package/dist/adapters/bun/main.js.map +1 -1
  10. package/dist/adapters/bun/server.d.ts +3 -2
  11. package/dist/adapters/bun/server.d.ts.map +1 -1
  12. package/dist/adapters/bun/server.js +3 -2
  13. package/dist/adapters/bun/server.js.map +1 -1
  14. package/dist/adapters/insforge/index.d.ts +1 -1
  15. package/dist/adapters/insforge/index.d.ts.map +1 -1
  16. package/dist/adapters/insforge/index.js +1 -1
  17. package/dist/adapters/insforge/index.js.map +1 -1
  18. package/dist/adapters/insforge/insforge.service.d.ts +32 -1
  19. package/dist/adapters/insforge/insforge.service.d.ts.map +1 -1
  20. package/dist/adapters/insforge/insforge.service.js +38 -1
  21. package/dist/adapters/insforge/insforge.service.js.map +1 -1
  22. package/dist/adapters/notion/index.d.ts +1 -1
  23. package/dist/adapters/notion/index.d.ts.map +1 -1
  24. package/dist/adapters/notion/index.js +1 -1
  25. package/dist/adapters/notion/index.js.map +1 -1
  26. package/dist/adapters/notion/notion.service.d.ts +30 -1
  27. package/dist/adapters/notion/notion.service.d.ts.map +1 -1
  28. package/dist/adapters/notion/notion.service.js +36 -1
  29. package/dist/adapters/notion/notion.service.js.map +1 -1
  30. package/dist/adapters/react/fetch.js +1 -1
  31. package/dist/adapters/react/fetch.js.map +1 -1
  32. package/dist/adapters/solid/fetch.js +1 -1
  33. package/dist/adapters/solid/fetch.js.map +1 -1
  34. package/dist/adapters/svelte/fetch.js +1 -1
  35. package/dist/adapters/svelte/fetch.js.map +1 -1
  36. package/dist/adapters/telegram/index.d.ts +1 -1
  37. package/dist/adapters/telegram/index.d.ts.map +1 -1
  38. package/dist/adapters/telegram/index.js +1 -1
  39. package/dist/adapters/telegram/index.js.map +1 -1
  40. package/dist/adapters/telegram/telegram.service.d.ts +25 -1
  41. package/dist/adapters/telegram/telegram.service.d.ts.map +1 -1
  42. package/dist/adapters/telegram/telegram.service.js +28 -1
  43. package/dist/adapters/telegram/telegram.service.js.map +1 -1
  44. package/dist/adapters/vue/vue.service.js +1 -1
  45. package/dist/adapters/vue/vue.service.js.map +1 -1
  46. package/dist/adapters/whatsapp/index.d.ts +1 -1
  47. package/dist/adapters/whatsapp/index.d.ts.map +1 -1
  48. package/dist/adapters/whatsapp/index.js +1 -1
  49. package/dist/adapters/whatsapp/index.js.map +1 -1
  50. package/dist/adapters/whatsapp/whatsapp.service.d.ts +30 -1
  51. package/dist/adapters/whatsapp/whatsapp.service.d.ts.map +1 -1
  52. package/dist/adapters/whatsapp/whatsapp.service.js +33 -1
  53. package/dist/adapters/whatsapp/whatsapp.service.js.map +1 -1
  54. package/dist/adapters/wordpress/index.d.ts +1 -1
  55. package/dist/adapters/wordpress/index.d.ts.map +1 -1
  56. package/dist/adapters/wordpress/index.js +1 -1
  57. package/dist/adapters/wordpress/index.js.map +1 -1
  58. package/dist/adapters/wordpress/wordpress.service.d.ts +34 -1
  59. package/dist/adapters/wordpress/wordpress.service.d.ts.map +1 -1
  60. package/dist/adapters/wordpress/wordpress.service.js +40 -1
  61. package/dist/adapters/wordpress/wordpress.service.js.map +1 -1
  62. package/dist/core/services/http.service.d.ts +85 -35
  63. package/dist/core/services/http.service.d.ts.map +1 -1
  64. package/dist/core/services/http.service.js +168 -49
  65. package/dist/core/services/http.service.js.map +1 -1
  66. package/dist/core/services/query.service.d.ts +1 -1
  67. package/dist/core/services/query.service.js +1 -1
  68. package/dist/core/services/utils.service.d.ts +27 -0
  69. package/dist/core/services/utils.service.d.ts.map +1 -1
  70. package/dist/core/services/utils.service.js +37 -0
  71. package/dist/core/services/utils.service.js.map +1 -1
  72. package/dist/types/index.d.ts +95 -4
  73. package/dist/types/index.d.ts.map +1 -1
  74. package/package.json +3 -9
@@ -1,6 +1,16 @@
1
1
  import { useTryJsonParse } from "./result.service.js";
2
+ import { useSplitConfig } from "./utils.service.js";
2
3
  /** Module-level API registry. */
3
4
  let apis = {};
5
+ /**
6
+ * Internal: narrows an unknown literal entry to an {@link ApiEntry}.
7
+ *
8
+ * @param value - A non-method value from a `defineApiConfig` literal.
9
+ * @returns `true` when the value looks like a registered API entry.
10
+ */
11
+ function isApiEntry(value) {
12
+ return typeof value === "object" && value !== null && "baseUri" in value && "endpoints" in value;
13
+ }
4
14
  /**
5
15
  * Internal: retrieves a registered API entry or throws.
6
16
  *
@@ -61,9 +71,59 @@ function serializeBody(body) {
61
71
  body: JSON.stringify(body),
62
72
  };
63
73
  }
74
+ /**
75
+ * Declares the API registry in a single call — the config-file entry point.
76
+ *
77
+ * Registers every {@link ApiEntry} you list and returns them alongside the
78
+ * props, flags and methods declared on the same literal, so one `export default`
79
+ * is the whole setup: no second `useInitApis(...)` step.
80
+ *
81
+ * Only object entries shaped like `{ baseUri, endpoints }` reach the registry;
82
+ * boolean flags are kept on `config` for your own methods to read.
83
+ *
84
+ * @typeParam T - The literal passed in.
85
+ * @param input - API entries, flags and methods in one object literal.
86
+ * @returns The registered config plus the declared methods (see {@link ConfigFacade}).
87
+ * @throws {Error} If a non-method value is an object that is not an API entry.
88
+ *
89
+ * @example
90
+ * ```ts
91
+ * import { defineApiConfig } from "katanakit-js";
92
+ *
93
+ * export default defineApiConfig({
94
+ * pokeapi: { baseUri: "https://pokeapi.co/api/v2", endpoints: { byId: "/pokemon/:id/" } },
95
+ * debug: true,
96
+ * getPokemon: async function () {
97
+ * return useFetch("pokeapi", "byId", { params: { id: 25 } });
98
+ * },
99
+ * });
100
+ * ```
101
+ *
102
+ * @remarks Methods must be written with `function`, not as arrows — `this.config`
103
+ * is undefined inside an arrow function.
104
+ */
105
+ export function defineApiConfig(input) {
106
+ const { config, methods } = useSplitConfig(input);
107
+ const registered = {};
108
+ for (const [name, value] of Object.entries(config)) {
109
+ if (isApiEntry(value)) {
110
+ registered[name] = value;
111
+ continue;
112
+ }
113
+ if (typeof value === "object" && value !== null) {
114
+ throw new Error(`[FetchApiManager] defineApiConfig: "${name}" is not an API entry ` +
115
+ `(expected an object with baseUri and endpoints).`);
116
+ }
117
+ }
118
+ useInitApis(registered);
119
+ // `methods` is a generic spread, so TS cannot prove the exact facade shape.
120
+ return { config, ...methods };
121
+ }
64
122
  /**
65
123
  * Registers (merges) API definitions into the client registry.
66
- * Prefer the clearer alias {@link useInitApis}.
124
+ *
125
+ * @deprecated Use {@link defineApiConfig}, which registers the config and
126
+ * returns it with any methods declared on the same literal.
67
127
  *
68
128
  * @param apisConfig - The API definitions to merge into the registry.
69
129
  *
@@ -85,6 +145,9 @@ export function useInit(apisConfig) {
85
145
  /**
86
146
  * Registers (merges) API definitions into the client registry.
87
147
  *
148
+ * @deprecated Use {@link defineApiConfig}, which registers the config and
149
+ * returns it with any methods declared on the same literal.
150
+ *
88
151
  * @param apisConfig - The API definitions to merge into the registry.
89
152
  *
90
153
  * @example
@@ -134,41 +197,42 @@ export function useGetApisConfig() {
134
197
  return useGetApis();
135
198
  }
136
199
  /**
137
- * Builds a safe http(s) URL from a registered API + endpoint without making
138
- * a network request.
139
- *
140
- * Use cases:
141
- * - **Navigation links** — generate `<a href>` URLs for download links, pagination, etc.
142
- * - **Image/file sources** — build `<img src>` or `<video src>` URLs from API endpoints.
143
- * - **Third-party libraries** — pass URLs to charting, mapping, or analytics libraries that
144
- * handle their own fetching.
145
- * - **Debugging** — log the full URL before making a request to verify params and query strings.
146
- * - **SSR** — construct URLs server-side for pre-rendering or metadata generation.
147
- *
148
- * @param apiName - The registered API key (from `useInitApis`).
149
- * @param endpointName - The endpoint key within that API.
150
- * @param options - Optional URL building options (path params, query params, ignore defaults).
151
- * @returns The fully constructed URL string.
152
- * @throws {Error} If the API or endpoint is not registered, or the URL scheme is not http(s).
200
+ * Returns the URL of a registered endpoint **without calling `fetch`**.
201
+ *
202
+ * It builds the same URL {@link useFetch} would request — same registry, same
203
+ * `:param` substitution, same `query` merge with `defaultQueryParams`, same
204
+ * http(s) guard — then stops and hands you the string.
205
+ *
206
+ * Use it when you need the **address**, not the response:
207
+ *
208
+ * - `<a href>` / `<img src>` — links and media built from an endpoint name
209
+ * - libraries that fetch on their own (charts, maps, analytics)
210
+ * - logging the exact URL you are about to request
211
+ * - SSR / prerender, where nothing should be requested
212
+ *
213
+ * @param apiName - Registered API key (from {@link defineApiConfig}).
214
+ * @param endpointName - Endpoint key inside that API.
215
+ * @param options - `params` fills `:placeholders`, `query` becomes the search string.
216
+ * @returns The fully built URL.
217
+ * @throws {Error} Unknown API, unknown endpoint, or a scheme that is not http(s).
153
218
  *
154
219
  * @example
155
220
  * ```ts
156
221
  * import { useBuildUrl } from "katanakit-js";
157
222
  *
158
- * // Basic URL with path params
159
- * const url = useBuildUrl("pokeapi", "pokemonById", { params: { id: 25 } });
223
+ * useBuildUrl("pokeapi", "pokemonById", { params: { id: 25 } });
160
224
  * // → "https://pokeapi.co/api/v2/pokemon/25"
161
225
  *
162
- * // URL with query params
163
- * const download = useBuildUrl("myApi", "export", { query: { format: "pdf" } });
226
+ * useBuildUrl("myApi", "export", { query: { format: "pdf" } });
164
227
  * // → "https://api.myapp.com/v1/export?format=pdf"
165
228
  *
166
- * // Use in a template
167
229
  * <a href={useBuildUrl("myApi", "download", { params: { id: 42 } })}>Download</a>
168
- *
169
- * // Debug before fetching
170
- * console.log("Will fetch:", useBuildUrl("myApi", "users", { query: { page: 1 } }));
171
230
  * ```
231
+ *
232
+ * @remarks Synchronous, so it **throws** instead of returning a Safe Result —
233
+ * Safe Result covers fallible async work, and this never leaves the process.
234
+ * To see the URL a request actually used, read `result.url` off a `useFetch`
235
+ * result instead.
172
236
  */
173
237
  export function useBuildUrl(apiName, endpointName, options = {}) {
174
238
  const { params, query, ignoreDefaultQuery = false } = options;
@@ -200,7 +264,9 @@ export function useBuildUrl(apiName, endpointName, options = {}) {
200
264
  }
201
265
  /**
202
266
  * Builds a safe http(s) URL from a registered API + endpoint.
203
- * Alias for {@link useBuildUrl}.
267
+ *
268
+ * @deprecated Use {@link useBuildUrl}. This is a behaviourally identical wrapper around it and
269
+ * exists only for backwards compatibility — scheduled for removal in the next major.
204
270
  *
205
271
  * @param apiName - The registered API key.
206
272
  * @param endpointName - The endpoint key within the API.
@@ -217,29 +283,70 @@ export function useBuildUrl(apiName, endpointName, options = {}) {
217
283
  export function useBuildApiUrl(apiName, endpointName, options = {}) {
218
284
  return useBuildUrl(apiName, endpointName, options);
219
285
  }
286
+ /**
287
+ * Picks the URL-building keys out of an options bag so nothing else leaks into
288
+ * the `RequestInit` handed to `fetch`.
289
+ *
290
+ * `useGet`/`usePost`/… accept `UrlOptions`, but JS callers can stuff arbitrary
291
+ * keys in there; spreading the whole bag would let a stray `method`, `headers`
292
+ * or `body` silently override what the wrapper already set.
293
+ *
294
+ * @param urlOptions - Legacy URL options, if any.
295
+ * @returns Only `params`, `query` and `ignoreDefaultQuery`, when defined.
296
+ */
297
+ function pickUrl(urlOptions) {
298
+ if (!urlOptions)
299
+ return {};
300
+ const { params, query, ignoreDefaultQuery } = urlOptions;
301
+ return {
302
+ ...(params !== undefined && { params }),
303
+ ...(query !== undefined && { query }),
304
+ ...(ignoreDefaultQuery !== undefined && { ignoreDefaultQuery }),
305
+ };
306
+ }
220
307
  /**
221
308
  * Fetches a registered endpoint and returns a Safe Result.
222
309
  *
310
+ * URL options sit at the top level, next to `method`/`headers`/`body` — no
311
+ * nesting, same shape as `useGet` and Nuxt's `useFetch`.
312
+ *
223
313
  * @param apiName - The registered API key.
224
314
  * @param endpointName - The endpoint key within the API.
225
- * @param options - Optional fetch options (method, headers, body, urlOptions).
226
- * @returns A {@link FetchResult} with data or error.
315
+ * @param options - Fetch options: `params`, `query`, `transform` and any `RequestInit` field.
316
+ * @returns A {@link FetchResult} with data or error. Never throws — a failing
317
+ * `transform` comes back as an error result too.
227
318
  *
228
319
  * @example
229
320
  * ```ts
230
321
  * import { useFetch } from "katanakit-js";
231
322
  *
232
- * const result = await useFetch("pokeapi", "pokemonById", {
323
+ * const result = await useFetch<{ results: unknown[] }>("pokeapi", "pokemons", {
233
324
  * method: "GET",
234
- * urlOptions: { params: { id: 25 } },
325
+ * query: { limit: 2 },
326
+ * transform: (body) => ({ results: (body as { results: unknown[] }).results }),
235
327
  * });
236
- * if (result.ok) console.log(result.data);
328
+ * if (result.ok) console.log(result.data.results);
329
+ * ```
330
+ *
331
+ * @example Legacy nested form (deprecated)
332
+ * ```ts
333
+ * useFetch("pokeapi", "pokemonById", { urlOptions: { params: { id: 25 } } });
237
334
  * ```
238
335
  */
239
- export async function useFetch(apiName, endpointName, { urlOptions, ...init } = {}) {
336
+ export async function useFetch(apiName, endpointName, { params, query, ignoreDefaultQuery, urlOptions, transform, ...init } = {}) {
240
337
  let url = "";
338
+ // The flat keys and the deprecated `urlOptions` nest describe the same
339
+ // thing; the flat form wins. `undefined` means "not given", so it must not
340
+ // overwrite a value coming from the legacy nest.
341
+ const buildOptions = { ...urlOptions };
342
+ if (params !== undefined)
343
+ buildOptions.params = params;
344
+ if (query !== undefined)
345
+ buildOptions.query = query;
346
+ if (ignoreDefaultQuery !== undefined)
347
+ buildOptions.ignoreDefaultQuery = ignoreDefaultQuery;
241
348
  try {
242
- url = useBuildUrl(apiName, endpointName, urlOptions);
349
+ url = useBuildUrl(apiName, endpointName, buildOptions);
243
350
  }
244
351
  catch (err) {
245
352
  const message = err instanceof Error ? err.message : String(err);
@@ -274,18 +381,30 @@ export async function useFetch(apiName, endpointName, { urlOptions, ...init } =
274
381
  };
275
382
  }
276
383
  // 204 No Content and empty bodies are valid success responses.
277
- if (response.status === 204) {
278
- return {
279
- data: null,
280
- error: null,
281
- url: response.url || url,
282
- status: 204,
283
- ok: true,
284
- };
384
+ const body = response.status === 204 ? null : await readBody(response);
385
+ let data = body;
386
+ if (transform) {
387
+ try {
388
+ data = await transform(body);
389
+ }
390
+ catch (err) {
391
+ // A failing transform is still a failed request — return it as a
392
+ // Safe Result instead of letting it escape `useFetch`.
393
+ const message = err instanceof Error ? err.message : String(err);
394
+ return {
395
+ data: null,
396
+ error: {
397
+ message: `Transform Error: ${message}`,
398
+ status: response.status,
399
+ },
400
+ url: response.url || url,
401
+ status: response.status,
402
+ ok: false,
403
+ };
404
+ }
285
405
  }
286
- const body = await readBody(response);
287
406
  return {
288
- data: body,
407
+ data: data,
289
408
  error: null,
290
409
  url: response.url || url,
291
410
  status: response.status,
@@ -321,7 +440,7 @@ export async function useFetch(apiName, endpointName, { urlOptions, ...init } =
321
440
  *
322
441
  * const result = await useFetchApi("pokeapi", "pokemonById", {
323
442
  * method: "GET",
324
- * urlOptions: { params: { id: 25 } },
443
+ * params: { id: 25 },
325
444
  * });
326
445
  * if (result.ok) console.log(result.data);
327
446
  * ```
@@ -347,7 +466,7 @@ export async function useFetchApi(apiName, endpointName, options) {
347
466
  * ```
348
467
  */
349
468
  export async function useGet(apiName, endpointName, urlOptions) {
350
- return useFetch(apiName, endpointName, { method: "GET", urlOptions });
469
+ return useFetch(apiName, endpointName, { method: "GET", ...pickUrl(urlOptions) });
351
470
  }
352
471
  /**
353
472
  * GET helper over a registered API endpoint.
@@ -390,7 +509,7 @@ export async function usePost(apiName, endpointName, body, urlOptions) {
390
509
  return useFetch(apiName, endpointName, {
391
510
  method: "POST",
392
511
  ...serializeBody(body),
393
- urlOptions,
512
+ ...pickUrl(urlOptions),
394
513
  });
395
514
  }
396
515
  /**
@@ -413,7 +532,7 @@ export async function usePut(apiName, endpointName, body, urlOptions) {
413
532
  return useFetch(apiName, endpointName, {
414
533
  method: "PUT",
415
534
  ...serializeBody(body),
416
- urlOptions,
535
+ ...pickUrl(urlOptions),
417
536
  });
418
537
  }
419
538
  /**
@@ -436,7 +555,7 @@ export async function usePatch(apiName, endpointName, body, urlOptions) {
436
555
  return useFetch(apiName, endpointName, {
437
556
  method: "PATCH",
438
557
  ...serializeBody(body),
439
- urlOptions,
558
+ ...pickUrl(urlOptions),
440
559
  });
441
560
  }
442
561
  /**
@@ -457,7 +576,7 @@ export async function usePatch(apiName, endpointName, body, urlOptions) {
457
576
  export async function useDelete(apiName, endpointName, urlOptions) {
458
577
  return useFetch(apiName, endpointName, {
459
578
  method: "DELETE",
460
- urlOptions,
579
+ ...pickUrl(urlOptions),
461
580
  });
462
581
  }
463
582
  //# sourceMappingURL=http.service.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"http.service.js","sourceRoot":"","sources":["../../../src/core/services/http.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"http.service.js","sourceRoot":"","sources":["../../../src/core/services/http.service.ts"],"names":[],"mappings":"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"}
@@ -85,7 +85,7 @@ export declare function useInitQueryClient(config?: QueryClientConfig): QueryCli
85
85
  *
86
86
  * // With cancellation: forward TanStack's AbortSignal into the request.
87
87
  * queryFn: useSafeQueryFn(({ signal }) =>
88
- * useFetch("pokeapi", "pokemonById", { method: "GET", urlOptions: { params: { id } }, signal }),
88
+ * useFetch("pokeapi", "pokemonById", { method: "GET", params: { id }, signal }),
89
89
  * )
90
90
  * ```
91
91
  */
@@ -94,7 +94,7 @@ export function useInitQueryClient(config = {}) {
94
94
  *
95
95
  * // With cancellation: forward TanStack's AbortSignal into the request.
96
96
  * queryFn: useSafeQueryFn(({ signal }) =>
97
- * useFetch("pokeapi", "pokemonById", { method: "GET", urlOptions: { params: { id } }, signal }),
97
+ * useFetch("pokeapi", "pokemonById", { method: "GET", params: { id }, signal }),
98
98
  * )
99
99
  * ```
100
100
  */
@@ -1,3 +1,4 @@
1
+ import type { ConfigData, ConfigMethodEntries } from "../../types/index.js";
1
2
  /**
2
3
  * Returns a new array with duplicate values removed, preserving first-seen order.
3
4
  *
@@ -226,4 +227,30 @@ export declare function useRound(value: string | number, decimals?: number): num
226
227
  * ```
227
228
  */
228
229
  export declare function useAverage(numbers: number[]): number;
230
+ /**
231
+ * Splits a `define*Config` literal into its config half (props and booleans)
232
+ * and its method half (values declared with `function`).
233
+ *
234
+ * Shared by every `define*Config` so they all read the same way: register
235
+ * `config`, then return `{ config, ...methods }` as a {@link ConfigFacade}.
236
+ *
237
+ * @typeParam T - The literal passed to a `define*Config` call.
238
+ * @param input - Object literal holding props, booleans and methods.
239
+ * @returns The config entries and the method entries, split apart.
240
+ *
241
+ * @example
242
+ * ```ts
243
+ * const { config, methods } = useSplitConfig({
244
+ * token: "abc",
245
+ * debug: true,
246
+ * send: async function () {},
247
+ * });
248
+ * // config → { token: "abc", debug: true }
249
+ * // methods → { send }
250
+ * ```
251
+ */
252
+ export declare function useSplitConfig<T extends object>(input: T): {
253
+ config: ConfigData<T>;
254
+ methods: ConfigMethodEntries<T>;
255
+ };
229
256
  //# sourceMappingURL=utils.service.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.service.d.ts","sourceRoot":"","sources":["../../../src/core/services/utils.service.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AACH,wBAAgB,SAAS,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,CAAC,EAAE,CAE5C;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,QAAQ,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,IAAI,EAAE,MAAM,GAAG,CAAC,EAAE,EAAE,CAK3D;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,UAAU,CAAC,CAAC,EAC3B,KAAK,EAAE,CAAC,EAAE,EACV,GAAG,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,MAAM,CAAC,GAClC,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAYrB;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAE1E;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,YAAY,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC,CAK3C;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,YAAY,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7D,MAAM,EAAE,CAAC,EACT,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC7B,CAAC,CAkBH;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,OAAO,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,MAAM,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAQ1F;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,OAAO,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,MAAM,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAS1F;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAElD;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,QAAQ,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,SAAI,EAAE,OAAO,SAAO,GAAG,OAAO,CAAC,CAAC,CAAC,CAQ/F;AAED;;;;;;;;;;;;GAYG;AACH,wBAAsB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAUvE;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAOzE;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,QAAQ,SAAI,GAAG,MAAM,CAKrE;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,MAAM,CAIpD"}
1
+ {"version":3,"file":"utils.service.d.ts","sourceRoot":"","sources":["../../../src/core/services/utils.service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAE5E;;;;;;;;;;;;GAYG;AACH,wBAAgB,SAAS,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,CAAC,EAAE,CAE5C;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,QAAQ,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,IAAI,EAAE,MAAM,GAAG,CAAC,EAAE,EAAE,CAK3D;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,UAAU,CAAC,CAAC,EAC3B,KAAK,EAAE,CAAC,EAAE,EACV,GAAG,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,MAAM,CAAC,GAClC,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAYrB;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAE1E;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,YAAY,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC,CAK3C;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,YAAY,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7D,MAAM,EAAE,CAAC,EACT,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC7B,CAAC,CAkBH;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,OAAO,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,MAAM,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAQ1F;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,OAAO,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,MAAM,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAS1F;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAElD;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,QAAQ,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,SAAI,EAAE,OAAO,SAAO,GAAG,OAAO,CAAC,CAAC,CAAC,CAQ/F;AAED;;;;;;;;;;;;GAYG;AACH,wBAAsB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAUvE;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAOzE;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,QAAQ,SAAI,GAAG,MAAM,CAKrE;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,MAAM,CAIpD;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,cAAc,CAAC,CAAC,SAAS,MAAM,EAC9C,KAAK,EAAE,CAAC,GACN;IACF,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC;IACtB,OAAO,EAAE,mBAAmB,CAAC,CAAC,CAAC,CAAC;CAChC,CAcA"}
@@ -323,4 +323,41 @@ export function useAverage(numbers) {
323
323
  const sum = numbers.reduce((acc, n) => acc + n, 0);
324
324
  return sum / numbers.length;
325
325
  }
326
+ /**
327
+ * Splits a `define*Config` literal into its config half (props and booleans)
328
+ * and its method half (values declared with `function`).
329
+ *
330
+ * Shared by every `define*Config` so they all read the same way: register
331
+ * `config`, then return `{ config, ...methods }` as a {@link ConfigFacade}.
332
+ *
333
+ * @typeParam T - The literal passed to a `define*Config` call.
334
+ * @param input - Object literal holding props, booleans and methods.
335
+ * @returns The config entries and the method entries, split apart.
336
+ *
337
+ * @example
338
+ * ```ts
339
+ * const { config, methods } = useSplitConfig({
340
+ * token: "abc",
341
+ * debug: true,
342
+ * send: async function () {},
343
+ * });
344
+ * // config → { token: "abc", debug: true }
345
+ * // methods → { send }
346
+ * ```
347
+ */
348
+ export function useSplitConfig(input) {
349
+ const config = {};
350
+ const methods = {};
351
+ for (const [key, value] of Object.entries(input)) {
352
+ if (typeof value === "function")
353
+ methods[key] = value;
354
+ else
355
+ config[key] = value;
356
+ }
357
+ return {
358
+ // The split is structural, so TS cannot relate either half back to `T`.
359
+ config: config,
360
+ methods: methods,
361
+ };
362
+ }
326
363
  //# sourceMappingURL=utils.service.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.service.js","sourceRoot":"","sources":["../../../src/core/services/utils.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.service.js","sourceRoot":"","sources":["../../../src/core/services/utils.service.ts"],"names":[],"mappings":"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"}
@@ -139,9 +139,38 @@ export interface ApiEntry {
139
139
  defaultQueryParams?: Record<string, QueryParams>;
140
140
  }
141
141
  export type ApisConfig = Record<string, ApiEntry>;
142
- /** Options passed when executing a fetch request. */
143
- export interface FetchOptions extends RequestInit {
142
+ /**
143
+ * Options passed when executing a fetch request.
144
+ *
145
+ * URL building lives **at the top level** — the same shape as `useGet`,
146
+ * `useRequest` and Nuxt's `useFetch` — so nothing has to be nested:
147
+ *
148
+ * ```ts
149
+ * useFetch("api", "byId", { method: "GET", params: { id: 25 }, query: { limit: 2 } });
150
+ * ```
151
+ *
152
+ * @typeParam T - The type {@link FetchOptions.transform} resolves to. Defaults
153
+ * to `any` on purpose: with `unknown` a bare `FetchOptions` (or one stored in
154
+ * a variable / passed through a wrapper) would no longer be assignable to
155
+ * `FetchOptions<T>`, which is a type-level break for existing callers.
156
+ */
157
+ export interface FetchOptions<T = any> extends RequestInit {
158
+ /** Path params substituted into `:name` placeholders of the endpoint. */
159
+ params?: PathParams;
160
+ /** Query-string params appended to the URL. */
161
+ query?: QueryParams;
162
+ /** Skip the endpoint's `defaultQueryParams` instead of merging them. */
163
+ ignoreDefaultQuery?: boolean;
164
+ /**
165
+ * Nested form of {@link FetchOptions.params}, {@link FetchOptions.query} and
166
+ * {@link FetchOptions.ignoreDefaultQuery}.
167
+ *
168
+ * @deprecated Pass them at the top level instead. Kept for backwards
169
+ * compatibility and scheduled for removal in the next major.
170
+ */
144
171
  urlOptions?: UrlOptions;
172
+ /** Maps the parsed response body to `T` before it is returned. */
173
+ transform?: (input: unknown) => T | Promise<T>;
145
174
  }
146
175
  /** Structure of the safe error returned on non-2xx or network failures. */
147
176
  export type ApiError = z.infer<typeof ApiErrorSchema>;
@@ -179,14 +208,17 @@ export type FetchResult<T = unknown> = {
179
208
  };
180
209
  /** Contract of the fetch facade. */
181
210
  export interface IFetchApiManager {
211
+ /** @deprecated Use `defineApiConfig`. */
182
212
  useInit(apis: ApisConfig): void;
213
+ /** @deprecated Use `defineApiConfig`. */
183
214
  useInitApis(apis: ApisConfig): void;
184
215
  useGetApis(): ApisConfig;
185
216
  useGetApisConfig(): ApisConfig;
186
217
  useBuildUrl(apiName: string, endpointName: string, options?: UrlOptions): string;
218
+ /** @deprecated Use `useBuildUrl`. */
187
219
  useBuildApiUrl(apiName: string, endpointName: string, options?: UrlOptions): string;
188
- useFetch<T = unknown>(apiName: string, endpointName: string, options?: FetchOptions): Promise<FetchResult<T>>;
189
- useFetchApi<T = unknown>(apiName: string, endpointName: string, options?: FetchOptions): Promise<FetchResult<T>>;
220
+ useFetch<T = unknown>(apiName: string, endpointName: string, options?: FetchOptions<T>): Promise<FetchResult<T>>;
221
+ useFetchApi<T = unknown>(apiName: string, endpointName: string, options?: FetchOptions<T>): Promise<FetchResult<T>>;
190
222
  useGet<T = unknown>(apiName: string, endpointName: string, urlOptions?: UrlOptions): Promise<FetchResult<T>>;
191
223
  useGetApi<T = unknown>(apiName: string, endpointName: string, urlOptions?: UrlOptions): Promise<FetchResult<T>>;
192
224
  usePost<T = unknown>(apiName: string, endpointName: string, body?: unknown, urlOptions?: UrlOptions): Promise<FetchResult<T>>;
@@ -596,6 +628,7 @@ export type NotionSearchQuery = z.infer<typeof NotionSearchQuerySchema>;
596
628
  export type NotionSearchResult = z.infer<typeof NotionSearchResultSchema>;
597
629
  /** Contract of the Notion adapter facade. */
598
630
  export interface INotionService {
631
+ /** @deprecated Use `defineNotionConfig`. */
599
632
  useInitNotion(config: NotionConfig): void;
600
633
  useNotionGetPage(pageId: string): Promise<FetchResult<NotionPage>>;
601
634
  useNotionCreatePage(parent: NotionParent, properties: Record<string, unknown>, children?: unknown[]): Promise<FetchResult<NotionPage>>;
@@ -718,6 +751,7 @@ export type WpBatchOperation = z.infer<typeof WpBatchOperationSchema>;
718
751
  export type WpBatchResult = z.infer<typeof WpBatchResultSchema>;
719
752
  /** Contract of the WordPress adapter facade. */
720
753
  export interface IWordPressService {
754
+ /** @deprecated Use `defineWordPressConfig`. */
721
755
  useInitWordPress(config: WordPressConfig): void;
722
756
  useWpGetPosts(options?: WpQueryParams): Promise<FetchResult<WpPost[]>>;
723
757
  useWpGetPost(id: number, options?: WpQueryParams): Promise<FetchResult<WpPost>>;
@@ -815,4 +849,61 @@ export type YoutubeChannelsResponse = z.infer<typeof YoutubeChannelsResponseSche
815
849
  export type YoutubePlaylistItemsResponse = z.infer<typeof YoutubePlaylistItemsResponseSchema>;
816
850
  /** Minimal `videos.list` shape (only what the service reads). */
817
851
  export type YoutubeVideosResponse = z.infer<typeof YoutubeVideosResponseSchema>;
852
+ /**
853
+ * Any method a consumer declares inline in a `define*Config` literal.
854
+ * Written with `function` (never an arrow) so `this` resolves to the facade.
855
+ */
856
+ export type ConfigMethod = (...args: never[]) => unknown;
857
+ /**
858
+ * Keys of `T` whose value is a {@link ConfigMethod}. Methods declared as
859
+ * optional are still detected (`NonNullable`), so they are split out of the
860
+ * config half rather than leaking into it.
861
+ */
862
+ export type ConfigMethodKeys<T> = {
863
+ [K in keyof T]-?: NonNullable<T[K]> extends ConfigMethod ? K : never;
864
+ }[keyof T];
865
+ /** The props/booleans half of a `define*Config` literal — the config data. */
866
+ export type ConfigData<T> = Omit<T, ConfigMethodKeys<T>>;
867
+ /** The methods half of a `define*Config` literal. */
868
+ export type ConfigMethodEntries<T> = Pick<T, ConfigMethodKeys<T>>;
869
+ /**
870
+ * What every `define*Config` returns: the registered config under `config`,
871
+ * plus the methods declared alongside it so `this.config` resolves inside them.
872
+ *
873
+ * @typeParam T - The literal passed to the `define*Config` call.
874
+ *
875
+ * @example
876
+ * ```ts
877
+ * const api = defineApiConfig({
878
+ * pokeapi: { baseUri: "…", endpoints: { users: "/users" } },
879
+ * debug: true,
880
+ * getUsers: async function () {
881
+ * return this.config.debug;
882
+ * },
883
+ * });
884
+ *
885
+ * api.config.pokeapi; // ApiEntry
886
+ * await api.getUsers();
887
+ * ```
888
+ */
889
+ export type ConfigFacade<T> = {
890
+ /** Props and booleans declared in the literal (methods stripped out). */
891
+ config: ConfigData<T>;
892
+ } & ConfigMethodEntries<T>;
893
+ /**
894
+ * Constrains every non-method entry of a `define*Config` literal to `V`, while
895
+ * leaving method entries untouched. Pair with `NoInfer<T>` in the signature so
896
+ * it validates without stealing inference from the literal.
897
+ *
898
+ * @typeParam T - The literal being validated.
899
+ * @typeParam V - The type every non-method value must satisfy.
900
+ */
901
+ export type ConfigValues<T, V> = {
902
+ [K in keyof T]: K extends ConfigMethodKeys<T> ? T[K] : V;
903
+ };
904
+ /**
905
+ * Values accepted by {@link defineApiConfig}: an {@link ApiEntry}, a boolean
906
+ * flag (kept on `config` only — never registered as an API) or a method.
907
+ */
908
+ export type ApiConfigValue = ApiEntry | boolean | ConfigMethod;
818
909
  //# sourceMappingURL=index.d.ts.map