katanakit-js 3.2.2 → 4.0.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 +142 -35
- package/dist/adapters/angular/fetch.d.ts +37 -0
- package/dist/adapters/angular/fetch.d.ts.map +1 -0
- package/dist/adapters/angular/fetch.js +67 -0
- package/dist/adapters/angular/fetch.js.map +1 -0
- package/dist/adapters/angular/index.d.ts +4 -0
- package/dist/adapters/angular/index.d.ts.map +1 -0
- package/dist/adapters/angular/index.js +4 -0
- package/dist/adapters/angular/index.js.map +1 -0
- package/dist/adapters/angular/query.d.ts +107 -0
- package/dist/adapters/angular/query.d.ts.map +1 -0
- package/dist/adapters/angular/query.js +166 -0
- package/dist/adapters/angular/query.js.map +1 -0
- package/dist/adapters/angular/watch.d.ts +34 -0
- package/dist/adapters/angular/watch.d.ts.map +1 -0
- package/dist/adapters/angular/watch.js +38 -0
- package/dist/adapters/angular/watch.js.map +1 -0
- package/dist/adapters/assistant/assistant.service.js +1 -1
- package/dist/adapters/assistant/assistant.service.js.map +1 -1
- package/dist/adapters/astro/astro.service.d.ts +0 -1
- package/dist/adapters/astro/astro.service.d.ts.map +1 -1
- package/dist/adapters/astro/astro.service.js +0 -1
- package/dist/adapters/astro/astro.service.js.map +1 -1
- package/dist/adapters/express/products.controller.d.ts.map +1 -1
- package/dist/adapters/express/products.controller.js +3 -1
- package/dist/adapters/express/products.controller.js.map +1 -1
- package/dist/adapters/notion/notion.service.d.ts +4 -2
- package/dist/adapters/notion/notion.service.d.ts.map +1 -1
- package/dist/adapters/notion/notion.service.js +19 -5
- package/dist/adapters/notion/notion.service.js.map +1 -1
- package/dist/adapters/react/fetch.d.ts +44 -0
- package/dist/adapters/react/fetch.d.ts.map +1 -0
- package/dist/adapters/react/fetch.js +74 -0
- package/dist/adapters/react/fetch.js.map +1 -0
- package/dist/adapters/react/index.d.ts +4 -0
- package/dist/adapters/react/index.d.ts.map +1 -0
- package/dist/adapters/react/index.js +4 -0
- package/dist/adapters/react/index.js.map +1 -0
- package/dist/adapters/react/query.d.ts +104 -0
- package/dist/adapters/react/query.d.ts.map +1 -0
- package/dist/adapters/react/query.js +200 -0
- package/dist/adapters/react/query.js.map +1 -0
- package/dist/adapters/react/watch.d.ts +37 -0
- package/dist/adapters/react/watch.d.ts.map +1 -0
- package/dist/adapters/react/watch.js +39 -0
- package/dist/adapters/react/watch.js.map +1 -0
- package/dist/adapters/solid/fetch.d.ts +43 -0
- package/dist/adapters/solid/fetch.d.ts.map +1 -0
- package/dist/adapters/solid/fetch.js +72 -0
- package/dist/adapters/solid/fetch.js.map +1 -0
- package/dist/adapters/solid/index.d.ts +4 -0
- package/dist/adapters/solid/index.d.ts.map +1 -0
- package/dist/adapters/solid/index.js +4 -0
- package/dist/adapters/solid/index.js.map +1 -0
- package/dist/adapters/solid/query.d.ts +102 -0
- package/dist/adapters/solid/query.d.ts.map +1 -0
- package/dist/adapters/solid/query.js +163 -0
- package/dist/adapters/solid/query.js.map +1 -0
- package/dist/adapters/solid/watch.d.ts +32 -0
- package/dist/adapters/solid/watch.d.ts.map +1 -0
- package/dist/adapters/solid/watch.js +36 -0
- package/dist/adapters/solid/watch.js.map +1 -0
- package/dist/adapters/svelte/fetch.d.ts +40 -0
- package/dist/adapters/svelte/fetch.d.ts.map +1 -0
- package/dist/adapters/svelte/fetch.js +75 -0
- package/dist/adapters/svelte/fetch.js.map +1 -0
- package/dist/adapters/svelte/index.d.ts +4 -0
- package/dist/adapters/svelte/index.d.ts.map +1 -0
- package/dist/adapters/svelte/index.js +4 -0
- package/dist/adapters/svelte/index.js.map +1 -0
- package/dist/adapters/svelte/query.d.ts +108 -0
- package/dist/adapters/svelte/query.d.ts.map +1 -0
- package/dist/adapters/svelte/query.js +172 -0
- package/dist/adapters/svelte/query.js.map +1 -0
- package/dist/adapters/svelte/watch.d.ts +32 -0
- package/dist/adapters/svelte/watch.d.ts.map +1 -0
- package/dist/adapters/svelte/watch.js +41 -0
- package/dist/adapters/svelte/watch.js.map +1 -0
- package/dist/adapters/vue/query.d.ts.map +1 -1
- package/dist/adapters/vue/query.js +8 -6
- package/dist/adapters/vue/query.js.map +1 -1
- package/dist/adapters/vue/vue.service.d.ts +9 -5
- package/dist/adapters/vue/vue.service.d.ts.map +1 -1
- package/dist/adapters/vue/vue.service.js +7 -3
- package/dist/adapters/vue/vue.service.js.map +1 -1
- package/dist/adapters/wordpress/wordpress.service.d.ts +2 -1
- package/dist/adapters/wordpress/wordpress.service.d.ts.map +1 -1
- package/dist/adapters/wordpress/wordpress.service.js +10 -5
- package/dist/adapters/wordpress/wordpress.service.js.map +1 -1
- package/dist/core/services/agent.service.d.ts.map +1 -1
- package/dist/core/services/agent.service.js +9 -1
- package/dist/core/services/agent.service.js.map +1 -1
- package/dist/core/services/dates.service.d.ts.map +1 -1
- package/dist/core/services/dates.service.js +2 -1
- package/dist/core/services/dates.service.js.map +1 -1
- package/dist/core/services/http.service.d.ts +26 -5
- package/dist/core/services/http.service.d.ts.map +1 -1
- package/dist/core/services/http.service.js +30 -6
- package/dist/core/services/http.service.js.map +1 -1
- package/dist/core/services/query.service.d.ts +4 -0
- package/dist/core/services/query.service.d.ts.map +1 -1
- package/dist/core/services/query.service.js +66 -55
- package/dist/core/services/query.service.js.map +1 -1
- package/dist/core/services/reactive.service.d.ts.map +1 -1
- package/dist/core/services/reactive.service.js +0 -3
- package/dist/core/services/reactive.service.js.map +1 -1
- package/dist/core/services/utils.service.d.ts.map +1 -1
- package/dist/core/services/utils.service.js +3 -0
- package/dist/core/services/utils.service.js.map +1 -1
- package/dist/infrastructure/dom/dom.service.d.ts.map +1 -1
- package/dist/infrastructure/dom/dom.service.js +15 -3
- package/dist/infrastructure/dom/dom.service.js.map +1 -1
- package/dist/infrastructure/storage/storage.service.d.ts.map +1 -1
- package/dist/infrastructure/storage/storage.service.js +12 -2
- package/dist/infrastructure/storage/storage.service.js.map +1 -1
- package/dist/prisma/assistant.store.d.ts +3 -0
- package/dist/prisma/assistant.store.d.ts.map +1 -1
- package/dist/prisma/assistant.store.js +12 -6
- package/dist/prisma/assistant.store.js.map +1 -1
- package/dist/prisma/use-prisma.d.ts +5 -4
- package/dist/prisma/use-prisma.d.ts.map +1 -1
- package/dist/prisma/use-prisma.js +5 -4
- package/dist/prisma/use-prisma.js.map +1 -1
- package/dist/types/index.d.ts +0 -1
- package/dist/types/index.d.ts.map +1 -1
- package/package.json +249 -185
- package/dist/prisma/db.d.ts +0 -4
- package/dist/prisma/db.d.ts.map +0 -1
- package/dist/prisma/db.js +0 -12
- package/dist/prisma/db.js.map +0 -1
|
@@ -0,0 +1,166 @@
|
|
|
1
|
+
import { DestroyRef, inject, signal } from "@angular/core";
|
|
2
|
+
import { useQueryClient, } from "../../core/services/query.service.js";
|
|
3
|
+
/**
|
|
4
|
+
* Angular signal factory that wraps the {@link QueryClient}.
|
|
5
|
+
* Integrates with the API manager — your `queryFn` typically calls `useGetApi`
|
|
6
|
+
* or `useFetch` and returns the Safe Result.
|
|
7
|
+
*
|
|
8
|
+
* Must be called within an injection context (component field initializer,
|
|
9
|
+
* constructor, or a service) so the returned query can auto-cleanup via
|
|
10
|
+
* `DestroyRef`. Requires Angular 16+ signals.
|
|
11
|
+
*
|
|
12
|
+
* @param config - Query configuration.
|
|
13
|
+
* @param client - Optional QueryClient instance (uses global singleton by default).
|
|
14
|
+
* @returns Signals `{ data, error, isLoading, isSuccess, isError, isStale, status }` plus `refetch`.
|
|
15
|
+
*
|
|
16
|
+
* @example
|
|
17
|
+
* ```ts
|
|
18
|
+
* import { Component, inject } from "@angular/core";
|
|
19
|
+
* import { useQuery } from "katanakit-js/adapters/angular";
|
|
20
|
+
* import { useGetApi } from "katanakit-js";
|
|
21
|
+
*
|
|
22
|
+
* @Component({ selector: "app-pokemon", template: `@if (isLoading()) { Loading… } @else { {{ data()?.name }} }` })
|
|
23
|
+
* export class PokemonComponent {
|
|
24
|
+
* readonly data = useQuery({ queryKey: ["pokemon", 25], queryFn: () => useGetApi("pokeapi", "pokemonById", { params: { id: 25 } }) }).data;
|
|
25
|
+
* }
|
|
26
|
+
* ```
|
|
27
|
+
*/
|
|
28
|
+
export function useQuery(config, client) {
|
|
29
|
+
const qc = client ?? useQueryClient();
|
|
30
|
+
const destroyRef = inject(DestroyRef);
|
|
31
|
+
const data = signal(null);
|
|
32
|
+
const error = signal(null);
|
|
33
|
+
const isLoading = signal(false);
|
|
34
|
+
const isSuccess = signal(false);
|
|
35
|
+
const isError = signal(false);
|
|
36
|
+
const isStale = signal(true);
|
|
37
|
+
const status = signal("idle");
|
|
38
|
+
const sync = (state) => {
|
|
39
|
+
data.set(state.data);
|
|
40
|
+
error.set(state.error);
|
|
41
|
+
isLoading.set(state.isLoading);
|
|
42
|
+
isSuccess.set(state.isSuccess);
|
|
43
|
+
isError.set(state.isError);
|
|
44
|
+
isStale.set(state.isStale);
|
|
45
|
+
status.set(state.status);
|
|
46
|
+
};
|
|
47
|
+
const qKey = config.queryKey;
|
|
48
|
+
const unsubscribe = qc.subscribe(qKey, (next) => sync(next));
|
|
49
|
+
const existing = qc.getQueryState(qKey);
|
|
50
|
+
if (existing)
|
|
51
|
+
sync(existing);
|
|
52
|
+
if (config.enabled !== false) {
|
|
53
|
+
void qc
|
|
54
|
+
.fetchQuery({
|
|
55
|
+
queryKey: qKey,
|
|
56
|
+
queryFn: config.queryFn,
|
|
57
|
+
staleTime: config.staleTime,
|
|
58
|
+
cacheTime: config.cacheTime,
|
|
59
|
+
retry: config.retry,
|
|
60
|
+
retryDelay: config.retryDelay,
|
|
61
|
+
})
|
|
62
|
+
.catch(() => {
|
|
63
|
+
// Error is already reflected in the cache state.
|
|
64
|
+
});
|
|
65
|
+
}
|
|
66
|
+
destroyRef.onDestroy(unsubscribe);
|
|
67
|
+
const refetch = async () => {
|
|
68
|
+
await qc
|
|
69
|
+
.fetchQuery({
|
|
70
|
+
queryKey: config.queryKey,
|
|
71
|
+
queryFn: config.queryFn,
|
|
72
|
+
staleTime: 0,
|
|
73
|
+
cacheTime: config.cacheTime,
|
|
74
|
+
retry: config.retry,
|
|
75
|
+
retryDelay: config.retryDelay,
|
|
76
|
+
})
|
|
77
|
+
.catch(() => {
|
|
78
|
+
// Error is already reflected in the cache state.
|
|
79
|
+
});
|
|
80
|
+
};
|
|
81
|
+
return { data, error, isLoading, isSuccess, isError, isStale, status, refetch };
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* Angular signal factory for mutations (POST/PUT/PATCH/DELETE).
|
|
85
|
+
* Does not cache — returns a `mutate` function that executes the mutation.
|
|
86
|
+
*
|
|
87
|
+
* Must be called within an injection context. Requires Angular 16+ signals.
|
|
88
|
+
*
|
|
89
|
+
* @param config - Mutation configuration.
|
|
90
|
+
* @returns Signals plus `{ mutate, reset }`.
|
|
91
|
+
*
|
|
92
|
+
* @example
|
|
93
|
+
* ```ts
|
|
94
|
+
* import { Component } from "@angular/core";
|
|
95
|
+
* import { useMutation, useQueryClient } from "katanakit-js/adapters/angular";
|
|
96
|
+
* import { usePost } from "katanakit-js";
|
|
97
|
+
*
|
|
98
|
+
* @Component({ selector: "app-create", template: `<button [disabled]="isLoading()" (click)="mutate('Ada')">Create</button>` })
|
|
99
|
+
* export class CreateUserComponent {
|
|
100
|
+
* private readonly qc = useQueryClient();
|
|
101
|
+
* readonly result = useMutation({
|
|
102
|
+
* mutationFn: (name: string) => usePost("api", "createUser", { name }),
|
|
103
|
+
* onSuccess: () => this.qc.invalidateQueries({ queryKey: ["users"] }),
|
|
104
|
+
* });
|
|
105
|
+
* readonly isLoading = this.result.isLoading;
|
|
106
|
+
* readonly mutate = this.result.mutate;
|
|
107
|
+
* }
|
|
108
|
+
* ```
|
|
109
|
+
*/
|
|
110
|
+
export function useMutation(config) {
|
|
111
|
+
const data = signal(null);
|
|
112
|
+
const error = signal(null);
|
|
113
|
+
const isLoading = signal(false);
|
|
114
|
+
const isSuccess = signal(false);
|
|
115
|
+
const isError = signal(false);
|
|
116
|
+
const status = signal("idle");
|
|
117
|
+
const mutate = async (variables) => {
|
|
118
|
+
isLoading.set(true);
|
|
119
|
+
isSuccess.set(false);
|
|
120
|
+
isError.set(false);
|
|
121
|
+
status.set("loading");
|
|
122
|
+
try {
|
|
123
|
+
const result = await config.mutationFn(variables);
|
|
124
|
+
if (result.ok) {
|
|
125
|
+
data.set(result.data);
|
|
126
|
+
error.set(null);
|
|
127
|
+
isSuccess.set(true);
|
|
128
|
+
status.set("success");
|
|
129
|
+
config.onSuccess?.(result.data, variables);
|
|
130
|
+
config.onSettled?.(result.data, null, variables);
|
|
131
|
+
}
|
|
132
|
+
else {
|
|
133
|
+
data.set(null);
|
|
134
|
+
error.set(result.error);
|
|
135
|
+
isError.set(true);
|
|
136
|
+
status.set("error");
|
|
137
|
+
config.onError?.(result.error, variables);
|
|
138
|
+
config.onSettled?.(null, result.error, variables);
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
catch (caught) {
|
|
142
|
+
const apiError = caught instanceof Error
|
|
143
|
+
? { message: caught.message, status: 0 }
|
|
144
|
+
: { message: String(caught), status: 0 };
|
|
145
|
+
data.set(null);
|
|
146
|
+
error.set(apiError);
|
|
147
|
+
isError.set(true);
|
|
148
|
+
status.set("error");
|
|
149
|
+
config.onError?.(apiError, variables);
|
|
150
|
+
config.onSettled?.(null, apiError, variables);
|
|
151
|
+
}
|
|
152
|
+
finally {
|
|
153
|
+
isLoading.set(false);
|
|
154
|
+
}
|
|
155
|
+
};
|
|
156
|
+
const reset = () => {
|
|
157
|
+
data.set(null);
|
|
158
|
+
error.set(null);
|
|
159
|
+
isLoading.set(false);
|
|
160
|
+
isSuccess.set(false);
|
|
161
|
+
isError.set(false);
|
|
162
|
+
status.set("idle");
|
|
163
|
+
};
|
|
164
|
+
return { data, error, isLoading, isSuccess, isError, status, mutate, reset };
|
|
165
|
+
}
|
|
166
|
+
//# sourceMappingURL=query.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"query.js","sourceRoot":"","sources":["../../../src/adapters/angular/query.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/** Options for {@link useWatch}. Accepted for API parity; Angular tracks signal reads natively. */
|
|
2
|
+
export interface UseWatchOptions {
|
|
3
|
+
deep?: boolean;
|
|
4
|
+
}
|
|
5
|
+
/**
|
|
6
|
+
* Angular signal watcher that invokes `callback` whenever any signal read
|
|
7
|
+
* inside `source` changes. Tracks the previous value so the callback receives
|
|
8
|
+
* `(value, previous)`.
|
|
9
|
+
*
|
|
10
|
+
* Must be called within an injection context; the effect auto-disposes with
|
|
11
|
+
* the owning scope. Angular tracks nested signal reads automatically, so
|
|
12
|
+
* `deep` is effectively always on.
|
|
13
|
+
*
|
|
14
|
+
* @typeParam T - The watched value type.
|
|
15
|
+
* @param source - A getter that reads the signals to watch.
|
|
16
|
+
* @param callback - Invoked on change as `(value, previous)`.
|
|
17
|
+
* @param options - Accepted for API parity (ignored).
|
|
18
|
+
*
|
|
19
|
+
* @example
|
|
20
|
+
* ```ts
|
|
21
|
+
* import { Component, signal } from "@angular/core";
|
|
22
|
+
* import { useWatch } from "katanakit-js/adapters/angular";
|
|
23
|
+
*
|
|
24
|
+
* @Component({ selector: "app-form", template: "" })
|
|
25
|
+
* export class FormComponent {
|
|
26
|
+
* readonly product = signal({ name: "", price: 0 });
|
|
27
|
+
* constructor() {
|
|
28
|
+
* useWatch(() => this.product(), (next, prev) => console.log(next, prev));
|
|
29
|
+
* }
|
|
30
|
+
* }
|
|
31
|
+
* ```
|
|
32
|
+
*/
|
|
33
|
+
export declare function useWatch<T>(source: () => T, callback: (value: T, previous: T | undefined) => void, _options?: UseWatchOptions): void;
|
|
34
|
+
//# sourceMappingURL=watch.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"watch.d.ts","sourceRoot":"","sources":["../../../src/adapters/angular/watch.ts"],"names":[],"mappings":"AAEA,mGAAmG;AACnG,MAAM,WAAW,eAAe;IAC/B,IAAI,CAAC,EAAE,OAAO,CAAC;CACf;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,wBAAgB,QAAQ,CAAC,CAAC,EACzB,MAAM,EAAE,MAAM,CAAC,EACf,QAAQ,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,GAAG,SAAS,KAAK,IAAI,EACrD,QAAQ,GAAE,eAAoB,GAC5B,IAAI,CAQN"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { effect } from "@angular/core";
|
|
2
|
+
/**
|
|
3
|
+
* Angular signal watcher that invokes `callback` whenever any signal read
|
|
4
|
+
* inside `source` changes. Tracks the previous value so the callback receives
|
|
5
|
+
* `(value, previous)`.
|
|
6
|
+
*
|
|
7
|
+
* Must be called within an injection context; the effect auto-disposes with
|
|
8
|
+
* the owning scope. Angular tracks nested signal reads automatically, so
|
|
9
|
+
* `deep` is effectively always on.
|
|
10
|
+
*
|
|
11
|
+
* @typeParam T - The watched value type.
|
|
12
|
+
* @param source - A getter that reads the signals to watch.
|
|
13
|
+
* @param callback - Invoked on change as `(value, previous)`.
|
|
14
|
+
* @param options - Accepted for API parity (ignored).
|
|
15
|
+
*
|
|
16
|
+
* @example
|
|
17
|
+
* ```ts
|
|
18
|
+
* import { Component, signal } from "@angular/core";
|
|
19
|
+
* import { useWatch } from "katanakit-js/adapters/angular";
|
|
20
|
+
*
|
|
21
|
+
* @Component({ selector: "app-form", template: "" })
|
|
22
|
+
* export class FormComponent {
|
|
23
|
+
* readonly product = signal({ name: "", price: 0 });
|
|
24
|
+
* constructor() {
|
|
25
|
+
* useWatch(() => this.product(), (next, prev) => console.log(next, prev));
|
|
26
|
+
* }
|
|
27
|
+
* }
|
|
28
|
+
* ```
|
|
29
|
+
*/
|
|
30
|
+
export function useWatch(source, callback, _options = {}) {
|
|
31
|
+
let previous;
|
|
32
|
+
effect(() => {
|
|
33
|
+
const value = source();
|
|
34
|
+
callback(value, previous);
|
|
35
|
+
previous = value;
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
//# sourceMappingURL=watch.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"watch.js","sourceRoot":"","sources":["../../../src/adapters/angular/watch.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAOvC;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,MAAM,UAAU,QAAQ,CACvB,MAAe,EACf,QAAqD,EACrD,WAA4B,EAAE;IAE9B,IAAI,QAAuB,CAAC;IAE5B,MAAM,CAAC,GAAG,EAAE;QACX,MAAM,KAAK,GAAG,MAAM,EAAE,CAAC;QACvB,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;QAC1B,QAAQ,GAAG,KAAK,CAAC;IAClB,CAAC,CAAC,CAAC;AACJ,CAAC"}
|
|
@@ -27,7 +27,7 @@ export function useCreateAssistantRouter(options = {}) {
|
|
|
27
27
|
return;
|
|
28
28
|
}
|
|
29
29
|
const result = await useReply(sessionId, message);
|
|
30
|
-
response.status(result.ok ? 200 : 502).json(result);
|
|
30
|
+
response.status(result.ok ? 200 : (result.error?.status ?? 502)).json(result);
|
|
31
31
|
});
|
|
32
32
|
router.get("/sessions/:id", async (request, response) => {
|
|
33
33
|
const id = String(request.params.id);
|
|
@@ -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,UAAkC,EAAE;IAC5E,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC;IAExB,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;QACnB,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IAC3B,CAAC;IAED,MAAM,CAAC,IAAI,CACV,OAAO,EACP,OAAO,CAAC,SAAS,IAAI,oBAAoB,EACzC,KAAK,EAAE,OAAgB,EAAE,QAAkB,EAAE,EAAE;QAC9C,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,CAAC,IAAI,IAAI,EAAE,CAGjD,CAAC;QAEF,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;YAC1D,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;gBACzB,EAAE,EAAE,KAAK;gBACT,IAAI,EAAE,IAAI;gBACV,KAAK,EAAE,EAAE,OAAO,EAAE,6BAA6B,EAAE,MAAM,EAAE,GAAG,EAAE;aAC9D,CAAC,CAAC;YACH,OAAO;QACR,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAClD,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"assistant.service.js","sourceRoot":"","sources":["../../../src/adapters/assistant/assistant.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -33,7 +33,6 @@ export declare function useAstroPathsFrom<T, TParam extends string = "slug", TPr
|
|
|
33
33
|
* export async function getStaticPaths() {
|
|
34
34
|
* const result = await useAstroGetStaticPaths(getCollection, "blog");
|
|
35
35
|
* if (result.ok) return result.data;
|
|
36
|
-
* TODO: traer el useLogger('error', result.error)
|
|
37
36
|
* console.error(result.error);
|
|
38
37
|
* return [];
|
|
39
38
|
* }
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"astro.service.d.ts","sourceRoot":"","sources":["../../../src/adapters/astro/astro.service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACX,SAAS,EACT,kBAAkB,EAClB,mBAAmB,EACnB,eAAe,EACf,YAAY,EACZ,MAAM,sBAAsB,CAAC;AAE9B;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,iBAAiB,CAAC,CAAC,EAAE,MAAM,SAAS,MAAM,GAAG,MAAM,EAAE,MAAM,GAAG,CAAC,EAC9E,KAAK,EAAE,CAAC,EAAE,EACV,OAAO,GAAE,YAAY,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAM,GAC3C,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAkB7B;AAED
|
|
1
|
+
{"version":3,"file":"astro.service.d.ts","sourceRoot":"","sources":["../../../src/adapters/astro/astro.service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACX,SAAS,EACT,kBAAkB,EAClB,mBAAmB,EACnB,eAAe,EACf,YAAY,EACZ,MAAM,sBAAsB,CAAC;AAE9B;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,iBAAiB,CAAC,CAAC,EAAE,MAAM,SAAS,MAAM,GAAG,MAAM,EAAE,MAAM,GAAG,CAAC,EAC9E,KAAK,EAAE,CAAC,EAAE,EACV,OAAO,GAAE,YAAY,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAM,GAC3C,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAkB7B;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAsB,sBAAsB,CAC3C,KAAK,GAAG,OAAO,EACf,MAAM,SAAS,MAAM,GAAG,MAAM,EAC9B,MAAM,GAAG,mBAAmB,CAAC,KAAK,CAAC,EAEnC,eAAe,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,OAAO,CAAC,mBAAmB,CAAC,KAAK,CAAC,EAAE,CAAC,EAC9E,cAAc,EAAE,MAAM,EACtB,OAAO,GAAE,YAAY,CAAC,mBAAmB,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,MAAM,CAAM,GACpE,OAAO,CAAC,kBAAkB,CAAC,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC,CAe1D;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,iBAAiB,CAAC,CAAC,EAClC,KAAK,EAAE,CAAC,EAAE,EACV,KAAK,EAAE,MAAM,EACb,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,MAAM,GAAG,MAAM,GACpC,CAAC,GAAG,IAAI,CAQV;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,0BAA0B,CAAC,CAAC,EAAE,MAAM,SAAS,MAAM,GAAG,MAAM,EAC3E,KAAK,EAAE,CAAC,EAAE,EACV,QAAQ,SAAK,EACb,KAAK,GAAE,MAAyB,GAC9B,SAAS,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC,CAAC,CAAC,EAAE,CAYzC;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,uBAAuB,CAAC,MAAM,SAAS,MAAM,GAAG,MAAM,EACrE,MAAM,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,EAC3B,KAAK,GAAE,MAAyB,GAC9B,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,EAAE,CAKtC;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,2BAA2B,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,OAAO,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,EAAE,CAEhG"}
|
|
@@ -41,7 +41,6 @@ export function useAstroPathsFrom(items, options = {}) {
|
|
|
41
41
|
* export async function getStaticPaths() {
|
|
42
42
|
* const result = await useAstroGetStaticPaths(getCollection, "blog");
|
|
43
43
|
* if (result.ok) return result.data;
|
|
44
|
-
* TODO: traer el useLogger('error', result.error)
|
|
45
44
|
* console.error(result.error);
|
|
46
45
|
* return [];
|
|
47
46
|
* }
|
|
@@ -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,UAA2C,EAAE;IAE7C,MAAM,EACL,KAAK,GAAG,MAAgB,EACxB,SAAS,GAAG,CAAC,IAAO,EAAE,EAAE;QACvB,MAAM,MAAM,GAAG,IAAyD,CAAC;QACzE,OAAO,MAAM,EAAE,IAAI,IAAI,MAAM,EAAE,EAAE,IAAI,EAAE,CAAC;IACzC,CAAC,EACD,SAAS,GAAG,CAAC,IAAO,EAAE,EAAE,CAAC,IAAyB,EAClD,UAAU,GACV,GAAG,OAAO,CAAC;IAEZ,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QAC3B,MAAM,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,EAAE,CAG5E;QACD,KAAK,EAAE,SAAS,CAAC,IAAI,CAAC;KACtB,CAAC,CAAC,CAAC;AACL,CAAC;AAED
|
|
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":"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;
|
|
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;AAUjD;;;;;;;;;;;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,5 +1,7 @@
|
|
|
1
1
|
/** Module-level products storage. */
|
|
2
2
|
const products = [];
|
|
3
|
+
/** Monotonically increasing id counter (avoids reuse after deletions). */
|
|
4
|
+
let nextId = 1;
|
|
3
5
|
/**
|
|
4
6
|
* Get all products.
|
|
5
7
|
*
|
|
@@ -52,7 +54,7 @@ export const useExpressGetProductById = (request, response) => {
|
|
|
52
54
|
export const useExpressCreateProduct = (request, response) => {
|
|
53
55
|
const { name = "", price = 0 } = (request.body ?? {});
|
|
54
56
|
const product = {
|
|
55
|
-
id:
|
|
57
|
+
id: nextId++,
|
|
56
58
|
name,
|
|
57
59
|
price: Number(price),
|
|
58
60
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"products.controller.js","sourceRoot":"","sources":["../../../src/adapters/express/products.controller.ts"],"names":[],"mappings":"AAIA,qCAAqC;AACrC,MAAM,QAAQ,GAAkB,EAAE,CAAC;AAEnC;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,QAAiB,EAAE,QAAkB,EAAQ,EAAE;IACvF,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;AACzB,CAAC,CAAC;AAEF;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,OAAgB,EAAE,QAAkB,EAAQ,EAAE;IACtF,MAAM,EAAE,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;IAC1D,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;IAExD,IAAI,CAAC,OAAO,EAAE,CAAC;QACd,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,mBAAmB,EAAE,CAAC,CAAC;QAC1D,OAAO;IACR,CAAC;IAED,QAAQ,CAAC,IAAI,CAAC,EAAE,WAAW,EAAE,OAAO,EAAE,CAAC,CAAC;AACzC,CAAC,CAAC;AAEF;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,OAAgB,EAAE,QAAkB,EAAQ,EAAE;IACrF,MAAM,EAAE,IAAI,GAAG,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,GAAG,CAAC,OAAO,CAAC,IAAI,IAAI,EAAE,CAGnD,CAAC;IAEF,MAAM,OAAO,GAAgB;QAC5B,EAAE,EAAE,
|
|
1
|
+
{"version":3,"file":"products.controller.js","sourceRoot":"","sources":["../../../src/adapters/express/products.controller.ts"],"names":[],"mappings":"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"}
|
|
@@ -355,6 +355,7 @@ export declare function useNotionSearchContent(query: NotionSearchQuery): Promis
|
|
|
355
355
|
* pagination cursors. Loops through all pages until `has_more` is false.
|
|
356
356
|
*
|
|
357
357
|
* @param blockId - The parent block ID (usually a page ID).
|
|
358
|
+
* @param maxItems - Optional cap on the total number of blocks to fetch.
|
|
358
359
|
* @returns All child blocks as a flat array.
|
|
359
360
|
*
|
|
360
361
|
* @example
|
|
@@ -366,7 +367,7 @@ export declare function useNotionSearchContent(query: NotionSearchQuery): Promis
|
|
|
366
367
|
* }
|
|
367
368
|
* ```
|
|
368
369
|
*/
|
|
369
|
-
export declare function useNotionListAllBlockChildren(blockId: string): Promise<FetchResult<NotionBlock[]>>;
|
|
370
|
+
export declare function useNotionListAllBlockChildren(blockId: string, maxItems?: number): Promise<FetchResult<NotionBlock[]>>;
|
|
370
371
|
/**
|
|
371
372
|
* Fetches ALL pages in a database, automatically handling cursor pagination.
|
|
372
373
|
*
|
|
@@ -377,6 +378,7 @@ export declare function useNotionListAllBlockChildren(blockId: string): Promise<
|
|
|
377
378
|
* @param databaseId - The database UUID.
|
|
378
379
|
* @param filter - Optional filter to apply (same syntax as Notion API).
|
|
379
380
|
* @param sorts - Optional sort options.
|
|
381
|
+
* @param maxItems - Optional cap on the total number of pages to fetch.
|
|
380
382
|
* @returns All pages matching the filter as a flat array.
|
|
381
383
|
*
|
|
382
384
|
* @example
|
|
@@ -393,5 +395,5 @@ export declare function useNotionListAllBlockChildren(blockId: string): Promise<
|
|
|
393
395
|
* );
|
|
394
396
|
* ```
|
|
395
397
|
*/
|
|
396
|
-
export declare function useNotionListAllDatabasePages(databaseId: string, filter?: NotionFilter, sorts?: NotionSort[]): Promise<FetchResult<NotionPage[]>>;
|
|
398
|
+
export declare function useNotionListAllDatabasePages(databaseId: string, filter?: NotionFilter, sorts?: NotionSort[], maxItems?: number): Promise<FetchResult<NotionPage[]>>;
|
|
397
399
|
//# sourceMappingURL=notion.service.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"notion.service.d.ts","sourceRoot":"","sources":["../../../src/adapters/notion/notion.service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACX,WAAW,EACX,WAAW,EACX,eAAe,EACf,YAAY,EACZ,cAAc,EACd,mBAAmB,EACnB,YAAY,EACZ,UAAU,EACV,cAAc,EACd,YAAY,EACZ,oBAAoB,EACpB,cAAc,EACd,iBAAiB,EACjB,kBAAkB,EAClB,UAAU,EACV,UAAU,EACV,cAAc,EACd,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"notion.service.d.ts","sourceRoot":"","sources":["../../../src/adapters/notion/notion.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -20,7 +20,15 @@ function getConfig() {
|
|
|
20
20
|
* @internal
|
|
21
21
|
*/
|
|
22
22
|
async function notionFetch(endpoint, options = {}) {
|
|
23
|
-
|
|
23
|
+
let cfg;
|
|
24
|
+
try {
|
|
25
|
+
cfg = getConfig();
|
|
26
|
+
}
|
|
27
|
+
catch (err) {
|
|
28
|
+
const message = err instanceof Error ? err.message : String(err);
|
|
29
|
+
return { data: null, error: { message, status: 0 }, url: "", status: 0, ok: false };
|
|
30
|
+
}
|
|
31
|
+
const { token, apiVersion, apiBaseUrl } = cfg;
|
|
24
32
|
const base = apiBaseUrl ?? NOTION_API_BASE;
|
|
25
33
|
const version = apiVersion ?? NOTION_API_VERSION;
|
|
26
34
|
const url = `${base}${endpoint}`;
|
|
@@ -520,6 +528,7 @@ export async function useNotionSearchContent(query) {
|
|
|
520
528
|
* pagination cursors. Loops through all pages until `has_more` is false.
|
|
521
529
|
*
|
|
522
530
|
* @param blockId - The parent block ID (usually a page ID).
|
|
531
|
+
* @param maxItems - Optional cap on the total number of blocks to fetch.
|
|
523
532
|
* @returns All child blocks as a flat array.
|
|
524
533
|
*
|
|
525
534
|
* @example
|
|
@@ -531,7 +540,7 @@ export async function useNotionSearchContent(query) {
|
|
|
531
540
|
* }
|
|
532
541
|
* ```
|
|
533
542
|
*/
|
|
534
|
-
export async function useNotionListAllBlockChildren(blockId) {
|
|
543
|
+
export async function useNotionListAllBlockChildren(blockId, maxItems) {
|
|
535
544
|
const allBlocks = [];
|
|
536
545
|
let cursor;
|
|
537
546
|
do {
|
|
@@ -542,10 +551,12 @@ export async function useNotionListAllBlockChildren(blockId) {
|
|
|
542
551
|
if (!result.ok)
|
|
543
552
|
return result;
|
|
544
553
|
allBlocks.push(...result.data.results);
|
|
554
|
+
if (maxItems && allBlocks.length >= maxItems)
|
|
555
|
+
break;
|
|
545
556
|
cursor = result.data.has_more ? (result.data.next_cursor ?? undefined) : undefined;
|
|
546
557
|
} while (cursor);
|
|
547
558
|
return {
|
|
548
|
-
data: allBlocks,
|
|
559
|
+
data: maxItems ? allBlocks.slice(0, maxItems) : allBlocks,
|
|
549
560
|
error: null,
|
|
550
561
|
url: "",
|
|
551
562
|
status: 200,
|
|
@@ -562,6 +573,7 @@ export async function useNotionListAllBlockChildren(blockId) {
|
|
|
562
573
|
* @param databaseId - The database UUID.
|
|
563
574
|
* @param filter - Optional filter to apply (same syntax as Notion API).
|
|
564
575
|
* @param sorts - Optional sort options.
|
|
576
|
+
* @param maxItems - Optional cap on the total number of pages to fetch.
|
|
565
577
|
* @returns All pages matching the filter as a flat array.
|
|
566
578
|
*
|
|
567
579
|
* @example
|
|
@@ -578,7 +590,7 @@ export async function useNotionListAllBlockChildren(blockId) {
|
|
|
578
590
|
* );
|
|
579
591
|
* ```
|
|
580
592
|
*/
|
|
581
|
-
export async function useNotionListAllDatabasePages(databaseId, filter, sorts) {
|
|
593
|
+
export async function useNotionListAllDatabasePages(databaseId, filter, sorts, maxItems) {
|
|
582
594
|
const allPages = [];
|
|
583
595
|
let cursor;
|
|
584
596
|
do {
|
|
@@ -591,10 +603,12 @@ export async function useNotionListAllDatabasePages(databaseId, filter, sorts) {
|
|
|
591
603
|
if (!result.ok)
|
|
592
604
|
return result;
|
|
593
605
|
allPages.push(...result.data.results);
|
|
606
|
+
if (maxItems && allPages.length >= maxItems)
|
|
607
|
+
break;
|
|
594
608
|
cursor = result.data.has_more ? (result.data.next_cursor ?? undefined) : undefined;
|
|
595
609
|
} while (cursor);
|
|
596
610
|
return {
|
|
597
|
-
data: allPages,
|
|
611
|
+
data: maxItems ? allPages.slice(0, maxItems) : allPages,
|
|
598
612
|
error: null,
|
|
599
613
|
url: "",
|
|
600
614
|
status: 200,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"notion.service.js","sourceRoot":"","sources":["../../../src/adapters/notion/notion.service.ts"],"names":[],"mappings":"AAoBA,mCAAmC;AACnC,MAAM,eAAe,GAAG,2BAA2B,CAAC;AAEpD,kCAAkC;AAClC,MAAM,kBAAkB,GAAG,YAAY,CAAC;AAExC,yCAAyC;AACzC,IAAI,MAAM,GAAwB,IAAI,CAAC;AAEvC;;;GAGG;AACH,SAAS,SAAS;IACjB,IAAI,CAAC,MAAM,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAC;IACzE,CAAC;IACD,OAAO,MAAM,CAAC;AACf,CAAC;AAED;;;;GAIG;AACH,KAAK,UAAU,WAAW,CACzB,QAAgB,EAChB,UAAuB,EAAE;IAEzB,MAAM,EAAE,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"notion.service.js","sourceRoot":"","sources":["../../../src/adapters/notion/notion.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import type { ApiError, UrlOptions } from "../../types/index.js";
|
|
2
|
+
/** Reactive state exposed by the {@link useRequest} hook. */
|
|
3
|
+
export interface RequestState<T = unknown> {
|
|
4
|
+
/** The resolved data on success, `null` otherwise. */
|
|
5
|
+
data: T | null;
|
|
6
|
+
/** The Safe Result error on failure, `null` otherwise. */
|
|
7
|
+
error: ApiError | null;
|
|
8
|
+
/** Whether a request is in flight. */
|
|
9
|
+
loading: boolean;
|
|
10
|
+
/** Re-runs the request manually. */
|
|
11
|
+
refetch: () => Promise<void>;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* React hook that wraps KatanaKit's HTTP GET with `useState` reactivity.
|
|
15
|
+
* Bridges the Safe Result pattern to idiomatic React state and never throws
|
|
16
|
+
* on HTTP errors.
|
|
17
|
+
*
|
|
18
|
+
* Stale responses are ignored via a request version counter and AbortController;
|
|
19
|
+
* in-flight requests are aborted on unmount. Re-fetches automatically when the
|
|
20
|
+
* serialized `options` change.
|
|
21
|
+
*
|
|
22
|
+
* @param apiName - Name of the registered API (see `useInitApis`).
|
|
23
|
+
* @param endpointName - Name of the endpoint inside that API.
|
|
24
|
+
* @param options - Optional `UrlOptions` (path/query params).
|
|
25
|
+
* @returns `{ data, error, loading, refetch }`.
|
|
26
|
+
*
|
|
27
|
+
* @example
|
|
28
|
+
* ```tsx
|
|
29
|
+
* import { useRequest } from "katanakit-js/adapters/react";
|
|
30
|
+
*
|
|
31
|
+
* function Pokemon({ id }: { id: number }) {
|
|
32
|
+
* const { data, error, loading } = useRequest<{ name: string }>(
|
|
33
|
+
* "pokeapi",
|
|
34
|
+
* "pokemonById",
|
|
35
|
+
* { params: { id } },
|
|
36
|
+
* );
|
|
37
|
+
* if (loading) return <div>Loading…</div>;
|
|
38
|
+
* if (error) return <div>{error.message}</div>;
|
|
39
|
+
* return <div>{data?.name}</div>;
|
|
40
|
+
* }
|
|
41
|
+
* ```
|
|
42
|
+
*/
|
|
43
|
+
export declare function useRequest<T>(apiName: string, endpointName: string, options?: UrlOptions): RequestState<T>;
|
|
44
|
+
//# sourceMappingURL=fetch.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fetch.d.ts","sourceRoot":"","sources":["../../../src/adapters/react/fetch.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAEjE,6DAA6D;AAC7D,MAAM,WAAW,YAAY,CAAC,CAAC,GAAG,OAAO;IACxC,sDAAsD;IACtD,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC;IACf,0DAA0D;IAC1D,KAAK,EAAE,QAAQ,GAAG,IAAI,CAAC;IACvB,sCAAsC;IACtC,OAAO,EAAE,OAAO,CAAC;IACjB,oCAAoC;IACpC,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC7B;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,wBAAgB,UAAU,CAAC,CAAC,EAC3B,OAAO,EAAE,MAAM,EACf,YAAY,EAAE,MAAM,EACpB,OAAO,CAAC,EAAE,UAAU,GAClB,YAAY,CAAC,CAAC,CAAC,CA+CjB"}
|