@fragno-dev/core 0.0.5 → 0.0.7
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/.turbo/turbo-build.log +47 -55
- package/.turbo/turbo-test.log +297 -0
- package/CHANGELOG.md +15 -0
- package/dist/api/api.d.ts +1 -1
- package/dist/api/api.js +1 -1
- package/dist/{api-CBDGZiLC.d.ts → api-CAPyac52.d.ts} +3 -3
- package/dist/api-CAPyac52.d.ts.map +1 -0
- package/dist/{api-DgHfYjq2.js → api-DuzjjCT4.js} +2 -2
- package/dist/{api-DgHfYjq2.js.map → api-DuzjjCT4.js.map} +1 -1
- package/dist/client/client.d.ts +2 -2
- package/dist/client/client.js +4 -4
- package/dist/client/client.svelte.d.ts +14 -14
- package/dist/client/client.svelte.d.ts.map +1 -1
- package/dist/client/client.svelte.js +4 -4
- package/dist/client/react.d.ts +12 -12
- package/dist/client/react.d.ts.map +1 -1
- package/dist/client/react.js +6 -8
- package/dist/client/react.js.map +1 -1
- package/dist/client/solid.d.ts +45 -0
- package/dist/client/solid.d.ts.map +1 -0
- package/dist/client/solid.js +110 -0
- package/dist/client/solid.js.map +1 -0
- package/dist/client/vanilla.d.ts +21 -21
- package/dist/client/vanilla.d.ts.map +1 -1
- package/dist/client/vanilla.js +4 -4
- package/dist/client/vue.d.ts +14 -14
- package/dist/client/vue.d.ts.map +1 -1
- package/dist/client/vue.js +4 -4
- package/dist/{client-Cf53QR-z.js → client-C_Oc8hpD.js} +7 -10
- package/dist/{client-Cf53QR-z.js.map → client-C_Oc8hpD.js.map} +1 -1
- package/dist/client-DdpPMlXL.d.ts +338 -0
- package/dist/client-DdpPMlXL.d.ts.map +1 -0
- package/dist/integrations/react-ssr.js +1 -1
- package/dist/mod.d.ts +2 -2
- package/dist/mod.js +44 -6
- package/dist/mod.js.map +1 -1
- package/dist/{route-Bp6eByhz.js → route-Dq62lXqB.js} +6 -6
- package/dist/route-Dq62lXqB.js.map +1 -0
- package/dist/{ssr-B9TeIF01.js → ssr-BAhbA_3q.js} +2 -2
- package/dist/{ssr-B9TeIF01.js.map → ssr-BAhbA_3q.js.map} +1 -1
- package/package.json +21 -22
- package/src/api/fragment.ts +90 -13
- package/src/api/request-middleware.test.ts +3 -3
- package/src/api/request-output-context.ts +3 -3
- package/src/api/route.ts +1 -8
- package/src/client/client-error.test.ts +17 -1
- package/src/client/solid.test.ts +840 -0
- package/src/client/solid.ts +261 -0
- package/tsdown.config.ts +1 -0
- package/vitest.config.ts +10 -7
- package/dist/api-CBDGZiLC.d.ts.map +0 -1
- package/dist/client-XFdAy-IQ.d.ts +0 -287
- package/dist/client-XFdAy-IQ.d.ts.map +0 -1
- package/dist/integrations/astro.d.ts +0 -18
- package/dist/integrations/astro.d.ts.map +0 -1
- package/dist/integrations/astro.js +0 -16
- package/dist/integrations/astro.js.map +0 -1
- package/dist/integrations/next-js.d.ts +0 -15
- package/dist/integrations/next-js.d.ts.map +0 -1
- package/dist/integrations/next-js.js +0 -17
- package/dist/integrations/next-js.js.map +0 -1
- package/dist/integrations/svelte-kit.d.ts +0 -21
- package/dist/integrations/svelte-kit.d.ts.map +0 -1
- package/dist/integrations/svelte-kit.js +0 -18
- package/dist/integrations/svelte-kit.js.map +0 -1
- package/dist/route-Bp6eByhz.js.map +0 -1
- package/src/integrations/astro.ts +0 -17
- package/src/integrations/next-js.ts +0 -31
- package/src/integrations/svelte-kit.ts +0 -41
|
@@ -0,0 +1,261 @@
|
|
|
1
|
+
import type { StandardSchemaV1 } from "@standard-schema/spec";
|
|
2
|
+
import { atom, type ReadableAtom, type Store, type StoreValue } from "nanostores";
|
|
3
|
+
import { useStore } from "@nanostores/solid";
|
|
4
|
+
import type { Accessor } from "solid-js";
|
|
5
|
+
import { createEffect } from "solid-js";
|
|
6
|
+
import type { NonGetHTTPMethod } from "../api/api";
|
|
7
|
+
import {
|
|
8
|
+
isGetHook,
|
|
9
|
+
isMutatorHook,
|
|
10
|
+
isStore,
|
|
11
|
+
type FragnoClientHookData,
|
|
12
|
+
type FragnoClientMutatorData,
|
|
13
|
+
type FragnoStoreData,
|
|
14
|
+
} from "./client";
|
|
15
|
+
import type { FragnoClientError } from "./client-error";
|
|
16
|
+
import type { InferOr } from "../util/types-util";
|
|
17
|
+
import type { MaybeExtractPathParamsOrWiden, QueryParamsHint } from "../api/internal/path";
|
|
18
|
+
import { isReadableAtom } from "../util/nanostores";
|
|
19
|
+
|
|
20
|
+
export type FragnoSolidHook<
|
|
21
|
+
_TMethod extends "GET",
|
|
22
|
+
TPath extends string,
|
|
23
|
+
TOutputSchema extends StandardSchemaV1,
|
|
24
|
+
TErrorCode extends string,
|
|
25
|
+
TQueryParameters extends string,
|
|
26
|
+
> = (args?: {
|
|
27
|
+
path?: MaybeExtractPathParamsOrWiden<TPath, string | Accessor<string> | ReadableAtom<string>>;
|
|
28
|
+
query?: QueryParamsHint<TQueryParameters, string | Accessor<string> | ReadableAtom<string>>;
|
|
29
|
+
}) => {
|
|
30
|
+
data: Accessor<InferOr<TOutputSchema, undefined>>;
|
|
31
|
+
loading: Accessor<boolean>;
|
|
32
|
+
error: Accessor<FragnoClientError<TErrorCode[number]> | undefined>;
|
|
33
|
+
};
|
|
34
|
+
|
|
35
|
+
export type FragnoSolidMutator<
|
|
36
|
+
_TMethod extends NonGetHTTPMethod,
|
|
37
|
+
TPath extends string,
|
|
38
|
+
TInputSchema extends StandardSchemaV1 | undefined,
|
|
39
|
+
TOutputSchema extends StandardSchemaV1 | undefined,
|
|
40
|
+
TErrorCode extends string,
|
|
41
|
+
TQueryParameters extends string,
|
|
42
|
+
> = () => {
|
|
43
|
+
mutate: (args: {
|
|
44
|
+
body?: InferOr<TInputSchema, undefined>;
|
|
45
|
+
path?: MaybeExtractPathParamsOrWiden<TPath, string | Accessor<string> | ReadableAtom<string>>;
|
|
46
|
+
query?: QueryParamsHint<TQueryParameters, string | Accessor<string> | ReadableAtom<string>>;
|
|
47
|
+
}) => Promise<InferOr<TOutputSchema, undefined>>;
|
|
48
|
+
loading: Accessor<boolean | undefined>;
|
|
49
|
+
error: Accessor<FragnoClientError<TErrorCode[number]> | undefined>;
|
|
50
|
+
data: Accessor<InferOr<TOutputSchema, undefined>>;
|
|
51
|
+
};
|
|
52
|
+
|
|
53
|
+
/**
|
|
54
|
+
* Type guard to check if a value is a SolidJS Accessor.
|
|
55
|
+
*
|
|
56
|
+
* @private
|
|
57
|
+
*/
|
|
58
|
+
export function isAccessor(value: unknown): value is Accessor<string> {
|
|
59
|
+
return typeof value === "function";
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
/**
|
|
63
|
+
* Converts a SolidJS Accessor to a NanoStore Atom.
|
|
64
|
+
*
|
|
65
|
+
* This is used to convert SolidJS accessors to atoms, so that we can use them in the store.
|
|
66
|
+
*
|
|
67
|
+
* @private
|
|
68
|
+
*/
|
|
69
|
+
export function accessorToAtom<T>(accessor: Accessor<T>): ReadableAtom<T> {
|
|
70
|
+
const a = atom(accessor());
|
|
71
|
+
|
|
72
|
+
createEffect(() => {
|
|
73
|
+
a.set(accessor());
|
|
74
|
+
});
|
|
75
|
+
|
|
76
|
+
return a;
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
// Helper function to create a SolidJS signal from a GET hook
|
|
80
|
+
// We want 1 store per hook, so on updates to params, we need to update the store instead of creating a new one.
|
|
81
|
+
// Nanostores only works with atoms (or strings), so we need to convert SolidJS accessors to atoms.
|
|
82
|
+
function createSolidHook<
|
|
83
|
+
TMethod extends "GET",
|
|
84
|
+
TPath extends string,
|
|
85
|
+
TOutputSchema extends StandardSchemaV1,
|
|
86
|
+
TErrorCode extends string,
|
|
87
|
+
TQueryParameters extends string,
|
|
88
|
+
>(
|
|
89
|
+
hook: FragnoClientHookData<TMethod, TPath, TOutputSchema, TErrorCode, TQueryParameters>,
|
|
90
|
+
): FragnoSolidHook<TMethod, TPath, TOutputSchema, TErrorCode, TQueryParameters> {
|
|
91
|
+
return ({ path, query } = {}) => {
|
|
92
|
+
const pathParams: Record<string, string | ReadableAtom<string>> = {};
|
|
93
|
+
const queryParams: Record<string, string | ReadableAtom<string>> = {};
|
|
94
|
+
|
|
95
|
+
for (const [key, value] of Object.entries(path ?? {})) {
|
|
96
|
+
const v = value as string | Accessor<string> | ReadableAtom<string>;
|
|
97
|
+
pathParams[key] = isAccessor(v) ? accessorToAtom(v) : v;
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
for (const [key, value] of Object.entries(query ?? {})) {
|
|
101
|
+
const v = value as string | Accessor<string> | ReadableAtom<string>;
|
|
102
|
+
queryParams[key] = isAccessor(v) ? accessorToAtom(v) : v;
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
const store = hook.store({
|
|
106
|
+
path: pathParams as MaybeExtractPathParamsOrWiden<TPath, string | ReadableAtom<string>>,
|
|
107
|
+
query: queryParams,
|
|
108
|
+
});
|
|
109
|
+
|
|
110
|
+
const storeValue = useStore(store);
|
|
111
|
+
|
|
112
|
+
return {
|
|
113
|
+
data: () => storeValue().data as InferOr<TOutputSchema, undefined>,
|
|
114
|
+
loading: () => storeValue().loading,
|
|
115
|
+
error: () => storeValue().error,
|
|
116
|
+
};
|
|
117
|
+
};
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
// Helper function to create a SolidJS mutator from a mutator hook
|
|
121
|
+
function createSolidMutator<
|
|
122
|
+
TMethod extends NonGetHTTPMethod,
|
|
123
|
+
TPath extends string,
|
|
124
|
+
TInputSchema extends StandardSchemaV1 | undefined,
|
|
125
|
+
TOutputSchema extends StandardSchemaV1 | undefined,
|
|
126
|
+
TErrorCode extends string,
|
|
127
|
+
TQueryParameters extends string,
|
|
128
|
+
>(
|
|
129
|
+
hook: FragnoClientMutatorData<
|
|
130
|
+
TMethod,
|
|
131
|
+
TPath,
|
|
132
|
+
TInputSchema,
|
|
133
|
+
TOutputSchema,
|
|
134
|
+
TErrorCode,
|
|
135
|
+
TQueryParameters
|
|
136
|
+
>,
|
|
137
|
+
): FragnoSolidMutator<TMethod, TPath, TInputSchema, TOutputSchema, TErrorCode, TQueryParameters> {
|
|
138
|
+
return () => {
|
|
139
|
+
const store = useStore(hook.mutatorStore);
|
|
140
|
+
|
|
141
|
+
// Create a wrapped mutate function that handles SolidJS accessors
|
|
142
|
+
const mutate = async (args: {
|
|
143
|
+
body?: InferOr<TInputSchema, undefined>;
|
|
144
|
+
path?: MaybeExtractPathParamsOrWiden<TPath, string | Accessor<string> | ReadableAtom<string>>;
|
|
145
|
+
query?: QueryParamsHint<TQueryParameters, string | Accessor<string> | ReadableAtom<string>>;
|
|
146
|
+
}) => {
|
|
147
|
+
const { body, path, query } = args;
|
|
148
|
+
|
|
149
|
+
const pathParams: Record<string, string | ReadableAtom<string>> = {};
|
|
150
|
+
const queryParams: Record<string, string | ReadableAtom<string>> = {};
|
|
151
|
+
|
|
152
|
+
for (const [key, value] of Object.entries(path ?? {})) {
|
|
153
|
+
const v = value as string | Accessor<string> | ReadableAtom<string>;
|
|
154
|
+
// For mutations, we read the current value of the accessor
|
|
155
|
+
pathParams[key] = isAccessor(v) ? v() : v;
|
|
156
|
+
}
|
|
157
|
+
|
|
158
|
+
for (const [key, value] of Object.entries(query ?? {})) {
|
|
159
|
+
const v = value as string | Accessor<string> | ReadableAtom<string>;
|
|
160
|
+
// For mutations, we read the current value of the accessor
|
|
161
|
+
queryParams[key] = isAccessor(v) ? v() : v;
|
|
162
|
+
}
|
|
163
|
+
|
|
164
|
+
// Call the store's mutate function with normalized params
|
|
165
|
+
return hook.mutatorStore.mutate({
|
|
166
|
+
body,
|
|
167
|
+
path: pathParams as MaybeExtractPathParamsOrWiden<TPath, string | ReadableAtom<string>>,
|
|
168
|
+
query: queryParams,
|
|
169
|
+
});
|
|
170
|
+
};
|
|
171
|
+
|
|
172
|
+
return {
|
|
173
|
+
mutate,
|
|
174
|
+
data: () => store().data as InferOr<TOutputSchema, undefined>,
|
|
175
|
+
loading: () => store().loading,
|
|
176
|
+
error: () => store().error,
|
|
177
|
+
};
|
|
178
|
+
};
|
|
179
|
+
}
|
|
180
|
+
|
|
181
|
+
export type FragnoSolidStore<T extends object> = T extends Store
|
|
182
|
+
? Accessor<StoreValue<T>>
|
|
183
|
+
: () => {
|
|
184
|
+
[K in keyof T]: T[K] extends Store ? Accessor<StoreValue<T[K]>> : T[K];
|
|
185
|
+
};
|
|
186
|
+
|
|
187
|
+
function createSolidStore<const T extends object>(
|
|
188
|
+
hook: FragnoStoreData<T>,
|
|
189
|
+
): Accessor<StoreValue<T>> | (() => Accessor<StoreValue<T>>) {
|
|
190
|
+
// If the store object itself is a single atom, wrap it with useStore
|
|
191
|
+
if (isReadableAtom(hook.obj)) {
|
|
192
|
+
return useStore(hook.obj);
|
|
193
|
+
}
|
|
194
|
+
|
|
195
|
+
// For objects containing atoms, wrap each atom property with useStore
|
|
196
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
197
|
+
const result: any = {};
|
|
198
|
+
|
|
199
|
+
for (const key in hook.obj) {
|
|
200
|
+
if (!Object.prototype.hasOwnProperty.call(hook.obj, key)) {
|
|
201
|
+
continue;
|
|
202
|
+
}
|
|
203
|
+
|
|
204
|
+
const value = hook.obj[key];
|
|
205
|
+
if (isReadableAtom(value)) {
|
|
206
|
+
result[key] = useStore(value);
|
|
207
|
+
} else {
|
|
208
|
+
result[key] = value;
|
|
209
|
+
}
|
|
210
|
+
}
|
|
211
|
+
|
|
212
|
+
return () => result;
|
|
213
|
+
}
|
|
214
|
+
|
|
215
|
+
export function useFragno<T extends Record<string, unknown>>(
|
|
216
|
+
clientObj: T,
|
|
217
|
+
): {
|
|
218
|
+
[K in keyof T]: T[K] extends FragnoClientHookData<
|
|
219
|
+
"GET",
|
|
220
|
+
infer TPath,
|
|
221
|
+
infer TOutputSchema,
|
|
222
|
+
infer TErrorCode,
|
|
223
|
+
infer TQueryParameters
|
|
224
|
+
>
|
|
225
|
+
? FragnoSolidHook<"GET", TPath, TOutputSchema, TErrorCode, TQueryParameters>
|
|
226
|
+
: T[K] extends FragnoClientMutatorData<
|
|
227
|
+
infer TMethod,
|
|
228
|
+
infer TPath,
|
|
229
|
+
infer TInput,
|
|
230
|
+
infer TOutput,
|
|
231
|
+
infer TError,
|
|
232
|
+
infer TQueryParameters
|
|
233
|
+
>
|
|
234
|
+
? FragnoSolidMutator<TMethod, TPath, TInput, TOutput, TError, TQueryParameters>
|
|
235
|
+
: T[K] extends FragnoStoreData<infer TStoreObj>
|
|
236
|
+
? FragnoSolidStore<TStoreObj>
|
|
237
|
+
: T[K];
|
|
238
|
+
} {
|
|
239
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
240
|
+
const result = {} as any;
|
|
241
|
+
|
|
242
|
+
for (const key in clientObj) {
|
|
243
|
+
if (!Object.prototype.hasOwnProperty.call(clientObj, key)) {
|
|
244
|
+
continue;
|
|
245
|
+
}
|
|
246
|
+
|
|
247
|
+
const hook = clientObj[key];
|
|
248
|
+
if (isGetHook(hook)) {
|
|
249
|
+
result[key] = createSolidHook(hook);
|
|
250
|
+
} else if (isMutatorHook(hook)) {
|
|
251
|
+
result[key] = createSolidMutator(hook);
|
|
252
|
+
} else if (isStore(hook)) {
|
|
253
|
+
result[key] = createSolidStore(hook);
|
|
254
|
+
} else {
|
|
255
|
+
// Pass through non-hook values unchanged
|
|
256
|
+
result[key] = hook;
|
|
257
|
+
}
|
|
258
|
+
}
|
|
259
|
+
|
|
260
|
+
return result;
|
|
261
|
+
}
|
package/tsdown.config.ts
CHANGED
package/vitest.config.ts
CHANGED
|
@@ -1,10 +1,13 @@
|
|
|
1
|
-
import { defineConfig } from "vitest/config";
|
|
1
|
+
import { defineConfig, mergeConfig } from "vitest/config";
|
|
2
|
+
import { baseConfig } from "@fragno-private/vitest-config";
|
|
2
3
|
import { svelte } from "@sveltejs/vite-plugin-svelte";
|
|
3
4
|
import { svelteTesting } from "@testing-library/svelte/vite";
|
|
4
5
|
|
|
5
|
-
export default defineConfig(
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
}
|
|
6
|
+
export default defineConfig(
|
|
7
|
+
mergeConfig(baseConfig, {
|
|
8
|
+
plugins: [svelte(), svelteTesting()],
|
|
9
|
+
test: {
|
|
10
|
+
environment: "happy-dom",
|
|
11
|
+
},
|
|
12
|
+
}),
|
|
13
|
+
);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"api-CBDGZiLC.d.ts","names":[],"sources":["../src/api/internal/path.ts","../src/api/request-input-context.ts","../src/http/http-status.ts","../src/api/internal/response-stream.ts","../src/util/types-util.ts","../src/api/request-output-context.ts","../src/api/error.ts","../src/api/api.ts"],"sourcesContent":[],"mappings":"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MAAA,EAAA,yBAAA,MAAA,GAAA,MAAA,CAAA,CAAA,KAAA,EOkCrB,iBPlCqB,COmC1B,OPnC0B,EOoC1B,SPpC0B,COoChB,KPpCgB,CAAA,EAAA,SAAA,EOsC1B,aPtC0B,EOuC1B,UPvC0B,EOwC1B,gBPxC0B,CAAA,GAAA;EAAA,WAAA,CAAA,EAAA,SAAA;IO0C3B,iBP1C2D,CO0CzC,OP1CyC,EO0ChC,KP1CgC,EAAA,SAAA,EO0Cd,aP1Cc,EO0CC,UP1CD,EO0Ca,gBP1Cb,CAAA;AAI1D,iBOyCY,QPzCZ,CAAA,gBO0Cc,UP1Cd,EAAA,cAAA,MAAA,EAAA,qBO4CmB,gBP5CnB,EAAA,sBO6CoB,gBP7CpB,GAAA,SAAA,EAAA,mBAAA,MAAA,GAAA,MAAA,EAAA,yBAAA,MAAA,GAAA,MAAA,CAAA,CAAA,KAAA,EOiDK,iBPjDL,COkDA,OPlDA,EOmDA,SPnDA,COmDU,KPnDV,CAAA,EOoDA,YPpDA,EOqDA,aPrDA,EOsDA,UPtDA,EOuDA,gBPvDA,CAAA,GAAA;aACE,EOwDW,YPxDX;IO0DH,iBPzDkB,COyDA,OPzDA,EOyDS,KPzDT,EOyDgB,YPzDhB,EOyD8B,aPzD9B,EOyD6C,UPzD7C,EOyDyD,gBPzDzD,CAAA"}
|
|
@@ -1,287 +0,0 @@
|
|
|
1
|
-
import { FragnoRouteConfig, HTTPMethod, InferOr, MaybeExtractPathParamsOrWiden, NonGetHTTPMethod, OutputContext, RequestBodyType, StatusCode } from "./api-CBDGZiLC.js";
|
|
2
|
-
import { ReadableAtom, Store } from "nanostores";
|
|
3
|
-
import { FetcherStore, MutatorStore } from "@nanostores/query";
|
|
4
|
-
import { StandardSchemaV1 } from "@standard-schema/spec";
|
|
5
|
-
|
|
6
|
-
//#region src/api/route.d.ts
|
|
7
|
-
type AnyFragnoRouteConfig = FragnoRouteConfig<HTTPMethod, string, any, any, any, any>;
|
|
8
|
-
interface RouteFactoryContext<TConfig, TDeps, TServices> {
|
|
9
|
-
config: TConfig;
|
|
10
|
-
deps: TDeps;
|
|
11
|
-
services: TServices;
|
|
12
|
-
}
|
|
13
|
-
type RouteFactory<TConfig, TDeps, TServices, TRoutes extends readonly FragnoRouteConfig<HTTPMethod, string, StandardSchemaV1 | undefined, StandardSchemaV1 | undefined, string, string>[]> = (context: RouteFactoryContext<TConfig, TDeps, TServices>) => TRoutes;
|
|
14
|
-
type AnyRouteOrFactory = AnyFragnoRouteConfig | RouteFactory<any, any, any, any>;
|
|
15
|
-
type FlattenRouteFactories<T extends readonly AnyRouteOrFactory[]> = T extends readonly [infer First, ...infer Rest extends readonly AnyRouteOrFactory[]] ? First extends RouteFactory<any, any, any, infer TRoutes> ? [...TRoutes, ...FlattenRouteFactories<Rest>] : [First, ...FlattenRouteFactories<Rest>] : [];
|
|
16
|
-
declare function defineRoute<const TMethod extends HTTPMethod, const TPath extends string, const TOutputSchema extends StandardSchemaV1 | undefined, const TErrorCode extends string = string, const TQueryParameters extends string = string>(config: FragnoRouteConfig<TMethod, TPath, undefined, TOutputSchema, TErrorCode, TQueryParameters> & {
|
|
17
|
-
inputSchema?: undefined;
|
|
18
|
-
}): FragnoRouteConfig<TMethod, TPath, undefined, TOutputSchema, TErrorCode, TQueryParameters>;
|
|
19
|
-
declare function defineRoute<const TMethod extends HTTPMethod, const TPath extends string, const TInputSchema extends StandardSchemaV1, const TOutputSchema extends StandardSchemaV1 | undefined, const TErrorCode extends string = string, const TQueryParameters extends string = string>(config: FragnoRouteConfig<TMethod, TPath, TInputSchema, TOutputSchema, TErrorCode, TQueryParameters> & {
|
|
20
|
-
inputSchema: TInputSchema;
|
|
21
|
-
}): FragnoRouteConfig<TMethod, TPath, TInputSchema, TOutputSchema, TErrorCode, TQueryParameters>;
|
|
22
|
-
type EmptyObject = {};
|
|
23
|
-
declare function defineRoutes<TConfig = EmptyObject, TDeps = EmptyObject, TServices = EmptyObject>(): {
|
|
24
|
-
create: <const TRoutes extends readonly FragnoRouteConfig<HTTPMethod, string, StandardSchemaV1 | undefined, StandardSchemaV1 | undefined, string, string>[]>(fn: (context: RouteFactoryContext<TConfig, TDeps, TServices>) => TRoutes) => RouteFactory<TConfig, TDeps, TServices, TRoutes>;
|
|
25
|
-
};
|
|
26
|
-
//#endregion
|
|
27
|
-
//#region src/api/request-middleware.d.ts
|
|
28
|
-
type FragnoMiddlewareCallback<TRoutes extends readonly AnyFragnoRouteConfig[], TDeps, TServices extends Record<string, unknown>> = (inputContext: RequestMiddlewareInputContext<TRoutes>, outputContext: RequestMiddlewareOutputContext<TDeps, TServices>) => Promise<Response | undefined> | Response | undefined;
|
|
29
|
-
interface RequestMiddlewareOptions {
|
|
30
|
-
path: string;
|
|
31
|
-
method: HTTPMethod;
|
|
32
|
-
pathParams?: Record<string, string>;
|
|
33
|
-
searchParams: URLSearchParams;
|
|
34
|
-
body: RequestBodyType;
|
|
35
|
-
request: Request;
|
|
36
|
-
}
|
|
37
|
-
declare class RequestMiddlewareOutputContext<const TDeps, const TServices extends Record<string, unknown>> extends OutputContext<unknown, string> {
|
|
38
|
-
#private;
|
|
39
|
-
constructor(deps: TDeps, services: TServices);
|
|
40
|
-
get deps(): TDeps;
|
|
41
|
-
get services(): TServices;
|
|
42
|
-
}
|
|
43
|
-
declare class RequestMiddlewareInputContext<const TRoutes extends readonly AnyFragnoRouteConfig[]> {
|
|
44
|
-
#private;
|
|
45
|
-
constructor(routes: TRoutes, options: RequestMiddlewareOptions);
|
|
46
|
-
get path(): string;
|
|
47
|
-
get method(): HTTPMethod;
|
|
48
|
-
get pathParams(): Record<string, string>;
|
|
49
|
-
get queryParams(): URLSearchParams;
|
|
50
|
-
get inputSchema(): StandardSchemaV1 | undefined;
|
|
51
|
-
get outputSchema(): StandardSchemaV1 | undefined;
|
|
52
|
-
ifMatchesRoute: <const TMethod extends HTTPMethod, const TPath extends ExtractRoutePath<TRoutes>, const TRoute extends ExtractRouteByPath<TRoutes, TPath, TMethod> = ExtractRouteByPath<TRoutes, TPath, TMethod>>(method: TMethod, path: TPath, handler: (...args: Parameters<TRoute["handler"]>) => Promise<Response | undefined | void> | Response | undefined | void) => Promise<Response | undefined>;
|
|
53
|
-
}
|
|
54
|
-
//#endregion
|
|
55
|
-
//#region src/api/fragment.d.ts
|
|
56
|
-
interface FragnoPublicConfig {
|
|
57
|
-
mountRoute?: string;
|
|
58
|
-
}
|
|
59
|
-
interface FragnoPublicClientConfig {
|
|
60
|
-
mountRoute?: string;
|
|
61
|
-
baseUrl?: string;
|
|
62
|
-
}
|
|
63
|
-
interface FragnoInstantiatedFragment<TRoutes extends readonly AnyFragnoRouteConfig[] = [], TDeps = EmptyObject, TServices extends Record<string, unknown> = Record<string, unknown>> {
|
|
64
|
-
config: FragnoFragmentSharedConfig<TRoutes>;
|
|
65
|
-
deps: TDeps;
|
|
66
|
-
services: TServices;
|
|
67
|
-
handler: (req: Request) => Promise<Response>;
|
|
68
|
-
mountRoute: string;
|
|
69
|
-
withMiddleware: (handler: FragnoMiddlewareCallback<TRoutes, TDeps, TServices>) => FragnoInstantiatedFragment<TRoutes, TDeps, TServices>;
|
|
70
|
-
}
|
|
71
|
-
interface FragnoFragmentSharedConfig<TRoutes extends readonly FragnoRouteConfig<HTTPMethod, string, StandardSchemaV1 | undefined, StandardSchemaV1 | undefined, string, string>[]> {
|
|
72
|
-
name: string;
|
|
73
|
-
routes: TRoutes;
|
|
74
|
-
}
|
|
75
|
-
interface FragmentDefinition<TConfig, TDeps = EmptyObject, TServices extends Record<string, unknown> = EmptyObject> {
|
|
76
|
-
name: string;
|
|
77
|
-
dependencies?: (config: TConfig) => TDeps;
|
|
78
|
-
services?: (config: TConfig, deps: TDeps) => TServices;
|
|
79
|
-
}
|
|
80
|
-
declare class FragmentBuilder<TConfig, TDeps = EmptyObject, TServices extends Record<string, unknown> = EmptyObject> {
|
|
81
|
-
#private;
|
|
82
|
-
constructor(definition: FragmentDefinition<TConfig, TDeps, TServices>);
|
|
83
|
-
get definition(): FragmentDefinition<TConfig, TDeps, TServices>;
|
|
84
|
-
withDependencies<TNewDeps>(fn: (config: TConfig) => TNewDeps): FragmentBuilder<TConfig, TNewDeps, TServices>;
|
|
85
|
-
withServices<TNewServices extends Record<string, unknown>>(fn: (config: TConfig, deps: TDeps) => TNewServices): FragmentBuilder<TConfig, TDeps, TNewServices>;
|
|
86
|
-
}
|
|
87
|
-
declare function defineFragment<TConfig = {}>(name: string): FragmentBuilder<TConfig>;
|
|
88
|
-
declare function createFragment<TConfig, TDeps, TServices extends Record<string, unknown>, const TRoutesOrFactories extends readonly AnyRouteOrFactory[]>(fragmentDefinition: FragmentBuilder<TConfig, TDeps, TServices>, config: TConfig, routesOrFactories: TRoutesOrFactories, fragnoConfig?: FragnoPublicConfig): FragnoInstantiatedFragment<FlattenRouteFactories<TRoutesOrFactories>, TDeps, TServices>;
|
|
89
|
-
//#endregion
|
|
90
|
-
//#region src/client/client-error.d.ts
|
|
91
|
-
type FragnoErrorOptions = {
|
|
92
|
-
cause?: Error | unknown;
|
|
93
|
-
};
|
|
94
|
-
/**
|
|
95
|
-
* Base error class for all Fragno client errors.
|
|
96
|
-
*/
|
|
97
|
-
declare abstract class FragnoClientError<TCode extends string = string> extends Error {
|
|
98
|
-
#private;
|
|
99
|
-
constructor(message: string, code: TCode, options?: FragnoErrorOptions);
|
|
100
|
-
get code(): TCode | (string & {});
|
|
101
|
-
}
|
|
102
|
-
declare class FragnoClientFetchError extends FragnoClientError<"NO_BODY" | "NETWORK_ERROR" | "ABORT_ERROR"> {
|
|
103
|
-
constructor(message: string, code: "NO_BODY" | "NETWORK_ERROR" | "ABORT_ERROR", options?: FragnoErrorOptions);
|
|
104
|
-
static fromUnknownFetchError(error: unknown): FragnoClientFetchError;
|
|
105
|
-
}
|
|
106
|
-
/**
|
|
107
|
-
* Error thrown when a network request fails (e.g., no internet connection, DNS failure).
|
|
108
|
-
*/
|
|
109
|
-
declare class FragnoClientFetchNetworkError extends FragnoClientFetchError {
|
|
110
|
-
constructor(message?: string, options?: FragnoErrorOptions);
|
|
111
|
-
}
|
|
112
|
-
/**
|
|
113
|
-
* Error thrown when a request is aborted (e.g., user cancels request, timeout).
|
|
114
|
-
*/
|
|
115
|
-
declare class FragnoClientFetchAbortError extends FragnoClientFetchError {
|
|
116
|
-
constructor(message?: string, options?: FragnoErrorOptions);
|
|
117
|
-
}
|
|
118
|
-
/**
|
|
119
|
-
* Error thrown when the API result is unexpected, e.g. no json is returned.
|
|
120
|
-
*/
|
|
121
|
-
declare class FragnoClientUnknownApiError extends FragnoClientError<"UNKNOWN_API_ERROR"> {
|
|
122
|
-
#private;
|
|
123
|
-
constructor(message: string | undefined, status: StatusCode, options?: FragnoErrorOptions);
|
|
124
|
-
get status(): StatusCode;
|
|
125
|
-
}
|
|
126
|
-
declare class FragnoClientApiError<TErrorCode extends string = string> extends FragnoClientError<TErrorCode> {
|
|
127
|
-
#private;
|
|
128
|
-
constructor({
|
|
129
|
-
message,
|
|
130
|
-
code
|
|
131
|
-
}: {
|
|
132
|
-
message: string;
|
|
133
|
-
code: TErrorCode;
|
|
134
|
-
}, status: StatusCode, options?: FragnoErrorOptions);
|
|
135
|
-
get status(): StatusCode;
|
|
136
|
-
/**
|
|
137
|
-
* The error code returned by the API.
|
|
138
|
-
*
|
|
139
|
-
* The type is `TErrorCode` (the set of known error codes for this route), but may also be a string
|
|
140
|
-
* for forward compatibility with future error codes.
|
|
141
|
-
*/
|
|
142
|
-
get code(): TErrorCode | (string & {});
|
|
143
|
-
static fromResponse<TErrorCode extends string = string>(response: Response): Promise<FragnoClientApiError<TErrorCode> | FragnoClientUnknownApiError>;
|
|
144
|
-
}
|
|
145
|
-
//#endregion
|
|
146
|
-
//#region src/client/client.d.ts
|
|
147
|
-
/**
|
|
148
|
-
* Symbols used to identify hook types
|
|
149
|
-
*/
|
|
150
|
-
declare const GET_HOOK_SYMBOL: unique symbol;
|
|
151
|
-
declare const MUTATOR_HOOK_SYMBOL: unique symbol;
|
|
152
|
-
declare const STORE_SYMBOL: unique symbol;
|
|
153
|
-
/**
|
|
154
|
-
* Extract only GET routes from a library config's routes array
|
|
155
|
-
*/
|
|
156
|
-
type ExtractGetRoutes<T extends readonly FragnoRouteConfig<HTTPMethod, string, StandardSchemaV1 | undefined, StandardSchemaV1 | undefined, string, string>[]> = { [K in keyof T]: T[K] extends FragnoRouteConfig<infer Method, infer Path, infer Input, infer Output, infer ErrorCode, infer QueryParams> ? Method extends "GET" ? FragnoRouteConfig<Method, Path, Input, Output, ErrorCode, QueryParams> : never : never }[number][];
|
|
157
|
-
/**
|
|
158
|
-
* Extract the path from a route configuration for a given method
|
|
159
|
-
*/
|
|
160
|
-
type ExtractRoutePath<T extends readonly FragnoRouteConfig<HTTPMethod, string, StandardSchemaV1 | undefined, StandardSchemaV1 | undefined, string, string>[], TExpectedMethod extends HTTPMethod = HTTPMethod> = { [K in keyof T]: T[K] extends FragnoRouteConfig<infer Method, infer Path, StandardSchemaV1 | undefined, StandardSchemaV1 | undefined, string, string> ? Method extends TExpectedMethod ? Path : never : never }[number];
|
|
161
|
-
type ExtractGetRoutePaths<T extends readonly FragnoRouteConfig<HTTPMethod, string, StandardSchemaV1 | undefined, StandardSchemaV1 | undefined, string, string>[]> = ExtractRoutePath<T, "GET">;
|
|
162
|
-
type ExtractNonGetRoutePaths<T extends readonly FragnoRouteConfig<HTTPMethod, string, StandardSchemaV1 | undefined, StandardSchemaV1 | undefined, string, string>[]> = ExtractRoutePath<T, NonGetHTTPMethod>;
|
|
163
|
-
/**
|
|
164
|
-
* Extract the route configuration type(s) for a given path from a routes array.
|
|
165
|
-
* Optionally narrow by HTTP method via the third type parameter.
|
|
166
|
-
*
|
|
167
|
-
* Defaults to extracting all methods for the matching path, producing a union
|
|
168
|
-
* if multiple methods exist for the same path.
|
|
169
|
-
*/
|
|
170
|
-
type ExtractRouteByPath<TRoutes extends readonly FragnoRouteConfig<HTTPMethod, string, StandardSchemaV1 | undefined, StandardSchemaV1 | undefined, string, string>[], TPath extends string, TMethod extends HTTPMethod = HTTPMethod> = { [K in keyof TRoutes]: TRoutes[K] extends FragnoRouteConfig<infer M, TPath, infer Input, infer Output, infer ErrorCode, infer QueryParams> ? M extends TMethod ? FragnoRouteConfig<M, TPath, Input, Output, ErrorCode, QueryParams> : never : never }[number];
|
|
171
|
-
/**
|
|
172
|
-
* Extract the output schema type for a specific route path from a routes array
|
|
173
|
-
*/
|
|
174
|
-
type ExtractOutputSchemaForPath<TRoutes extends readonly FragnoRouteConfig<HTTPMethod, string, StandardSchemaV1 | undefined, StandardSchemaV1 | undefined>[], TPath extends string> = { [K in keyof TRoutes]: TRoutes[K] extends FragnoRouteConfig<infer Method, TPath, StandardSchemaV1 | undefined, infer Output> ? Method extends "GET" ? Output : never : never }[number];
|
|
175
|
-
/**
|
|
176
|
-
* Check if a path exists as a GET route in the routes array
|
|
177
|
-
*/
|
|
178
|
-
type IsValidGetRoutePath<TRoutes extends readonly FragnoRouteConfig<HTTPMethod, string, StandardSchemaV1 | undefined, StandardSchemaV1 | undefined, string, string>[], TPath extends string> = TPath extends ExtractGetRoutePaths<TRoutes> ? true : false;
|
|
179
|
-
/**
|
|
180
|
-
* Utility type to ensure only valid GET route paths can be used
|
|
181
|
-
*/
|
|
182
|
-
type ValidateGetRoutePath<TRoutes extends readonly FragnoRouteConfig<HTTPMethod, string, StandardSchemaV1 | undefined, StandardSchemaV1 | undefined, string, string>[], TPath extends string> = TPath extends ExtractGetRoutePaths<TRoutes> ? TPath : `Error: Path '${TPath}' is not a valid GET route. Available GET routes: ${ExtractGetRoutePaths<TRoutes>}`;
|
|
183
|
-
/**
|
|
184
|
-
* Helper type to check if a routes array has any GET routes
|
|
185
|
-
*/
|
|
186
|
-
type HasGetRoutes<T extends readonly FragnoRouteConfig<HTTPMethod, string, StandardSchemaV1 | undefined, StandardSchemaV1 | undefined, string, string>[]> = ExtractGetRoutePaths<T> extends never ? false : true;
|
|
187
|
-
type ObjectContainingStoreField<T extends object> = T extends Store ? T : { [K in keyof T]: T[K] extends Store ? { [P in K]: T[P] } & Partial<Omit<T, K>> : never }[keyof T] extends never ? never : T;
|
|
188
|
-
type FragnoStoreData<T extends object> = {
|
|
189
|
-
obj: T;
|
|
190
|
-
[STORE_SYMBOL]: true;
|
|
191
|
-
};
|
|
192
|
-
type FragnoClientHookData<TMethod extends HTTPMethod, TPath extends string, TOutputSchema extends StandardSchemaV1, TErrorCode extends string, TQueryParameters extends string> = {
|
|
193
|
-
route: FragnoRouteConfig<TMethod, TPath, StandardSchemaV1 | undefined, TOutputSchema, TErrorCode, TQueryParameters>;
|
|
194
|
-
query(args?: {
|
|
195
|
-
path?: MaybeExtractPathParamsOrWiden<TPath, string>;
|
|
196
|
-
query?: Record<TQueryParameters, string>;
|
|
197
|
-
}): Promise<StandardSchemaV1.InferOutput<TOutputSchema>>;
|
|
198
|
-
store(args?: {
|
|
199
|
-
path?: MaybeExtractPathParamsOrWiden<TPath, string | ReadableAtom<string>>;
|
|
200
|
-
query?: Record<TQueryParameters, string | ReadableAtom<string>>;
|
|
201
|
-
}): FetcherStore<StandardSchemaV1.InferOutput<TOutputSchema>, FragnoClientError<TErrorCode>>;
|
|
202
|
-
[GET_HOOK_SYMBOL]: true;
|
|
203
|
-
} & {
|
|
204
|
-
readonly _outputSchema?: TOutputSchema;
|
|
205
|
-
};
|
|
206
|
-
type FragnoClientMutatorData<TMethod extends NonGetHTTPMethod, TPath extends string, TInputSchema extends StandardSchemaV1 | undefined, TOutputSchema extends StandardSchemaV1 | undefined, TErrorCode extends string, TQueryParameters extends string> = {
|
|
207
|
-
route: FragnoRouteConfig<TMethod, TPath, TInputSchema, TOutputSchema, TErrorCode, TQueryParameters>;
|
|
208
|
-
mutateQuery(args?: {
|
|
209
|
-
body?: InferOr<TInputSchema, undefined>;
|
|
210
|
-
path?: MaybeExtractPathParamsOrWiden<TPath, string>;
|
|
211
|
-
query?: Record<TQueryParameters, string>;
|
|
212
|
-
}): Promise<InferOr<TOutputSchema, undefined>>;
|
|
213
|
-
mutatorStore: MutatorStore<{
|
|
214
|
-
body?: InferOr<TInputSchema, undefined>;
|
|
215
|
-
path?: MaybeExtractPathParamsOrWiden<TPath, string | ReadableAtom<string>>;
|
|
216
|
-
query?: Record<TQueryParameters, string | ReadableAtom<string>>;
|
|
217
|
-
}, InferOr<TOutputSchema, undefined>, FragnoClientError<TErrorCode>>;
|
|
218
|
-
[MUTATOR_HOOK_SYMBOL]: true;
|
|
219
|
-
} & {
|
|
220
|
-
readonly _inputSchema?: TInputSchema;
|
|
221
|
-
readonly _outputSchema?: TOutputSchema;
|
|
222
|
-
};
|
|
223
|
-
declare function buildUrl<TPath extends string>(config: {
|
|
224
|
-
baseUrl?: string;
|
|
225
|
-
mountRoute: string;
|
|
226
|
-
path: TPath;
|
|
227
|
-
}, params: {
|
|
228
|
-
pathParams?: Record<string, string | ReadableAtom<string>>;
|
|
229
|
-
queryParams?: Record<string, string | ReadableAtom<string>>;
|
|
230
|
-
}): string;
|
|
231
|
-
/**
|
|
232
|
-
* This method returns an array, which can be passed directly to nanostores.
|
|
233
|
-
*
|
|
234
|
-
* The returned array is always: path, pathParams (In order they appear in the path), queryParams (In alphabetical order)
|
|
235
|
-
* Missing pathParams are replaced with "<missing>".
|
|
236
|
-
* @param path
|
|
237
|
-
* @param params
|
|
238
|
-
* @returns
|
|
239
|
-
*/
|
|
240
|
-
declare function getCacheKey<TMethod extends HTTPMethod, TPath extends string>(method: TMethod, path: TPath, params?: {
|
|
241
|
-
pathParams?: Record<string, string | ReadableAtom<string>>;
|
|
242
|
-
queryParams?: Record<string, string | ReadableAtom<string>>;
|
|
243
|
-
}): (string | ReadableAtom<string>)[];
|
|
244
|
-
declare function isGetHook<TPath extends string, TOutputSchema extends StandardSchemaV1, TErrorCode extends string, TQueryParameters extends string>(hook: unknown): hook is FragnoClientHookData<"GET", TPath, TOutputSchema, TErrorCode, TQueryParameters>;
|
|
245
|
-
declare function isMutatorHook<TMethod extends NonGetHTTPMethod, TPath extends string, TInputSchema extends StandardSchemaV1 | undefined, TOutputSchema extends StandardSchemaV1 | undefined, TErrorCode extends string, TQueryParameters extends string>(hook: unknown): hook is FragnoClientMutatorData<TMethod, TPath, TInputSchema, TOutputSchema, TErrorCode, TQueryParameters>;
|
|
246
|
-
declare function isStore<TStore extends Store>(obj: unknown): obj is FragnoStoreData<TStore>;
|
|
247
|
-
type OnErrorRetryFn = (opts: {
|
|
248
|
-
error: unknown;
|
|
249
|
-
key: string;
|
|
250
|
-
retryCount: number;
|
|
251
|
-
}) => number | undefined;
|
|
252
|
-
type CreateHookOptions = {
|
|
253
|
-
/**
|
|
254
|
-
* A function that will be called when an error occurs. Implements an exponential backoff strategy
|
|
255
|
-
* when left undefined. When null, retries will be disabled. The number returned (> 0) by the
|
|
256
|
-
* callback will determine in how many ms to retry next.
|
|
257
|
-
*/
|
|
258
|
-
onErrorRetry?: OnErrorRetryFn | null;
|
|
259
|
-
};
|
|
260
|
-
type OnInvalidateFn<TPath extends string> = (invalidate: <TInnerPath extends string>(method: HTTPMethod, path: TInnerPath, params: {
|
|
261
|
-
pathParams?: MaybeExtractPathParamsOrWiden<TInnerPath, string>;
|
|
262
|
-
queryParams?: Record<string, string>;
|
|
263
|
-
}) => void, params: {
|
|
264
|
-
pathParams: MaybeExtractPathParamsOrWiden<TPath, string>;
|
|
265
|
-
queryParams?: Record<string, string>;
|
|
266
|
-
}) => void;
|
|
267
|
-
type CacheLine = {
|
|
268
|
-
data: unknown;
|
|
269
|
-
error: unknown;
|
|
270
|
-
retryCount: number;
|
|
271
|
-
created: number;
|
|
272
|
-
expires: number;
|
|
273
|
-
};
|
|
274
|
-
declare class ClientBuilder<TRoutes extends readonly FragnoRouteConfig<HTTPMethod, string, StandardSchemaV1 | undefined, StandardSchemaV1 | undefined, string, string>[], TFragmentConfig extends FragnoFragmentSharedConfig<TRoutes>> {
|
|
275
|
-
#private;
|
|
276
|
-
constructor(publicConfig: FragnoPublicClientConfig, fragmentConfig: TFragmentConfig);
|
|
277
|
-
get cacheEntries(): Readonly<Record<string, CacheLine>>;
|
|
278
|
-
createStore<const T extends object>(obj: T): FragnoStoreData<T>;
|
|
279
|
-
createHook<TPath extends ExtractGetRoutePaths<TFragmentConfig["routes"]>>(path: ValidateGetRoutePath<TFragmentConfig["routes"], TPath>, options?: CreateHookOptions): FragnoClientHookData<"GET", TPath, NonNullable<ExtractRouteByPath<TFragmentConfig["routes"], TPath>["outputSchema"]>, NonNullable<ExtractRouteByPath<TFragmentConfig["routes"], TPath>["errorCodes"]>[number], NonNullable<ExtractRouteByPath<TFragmentConfig["routes"], TPath>["queryParameters"]>[number]>;
|
|
280
|
-
createMutator<TPath extends ExtractNonGetRoutePaths<TFragmentConfig["routes"]>>(method: NonGetHTTPMethod, path: TPath, onInvalidate?: OnInvalidateFn<TPath>): FragnoClientMutatorData<NonGetHTTPMethod,
|
|
281
|
-
// TODO: This can be any Method, but should be related to TPath
|
|
282
|
-
TPath, ExtractRouteByPath<TFragmentConfig["routes"], TPath>["inputSchema"], ExtractRouteByPath<TFragmentConfig["routes"], TPath>["outputSchema"], NonNullable<ExtractRouteByPath<TFragmentConfig["routes"], TPath>["errorCodes"]>[number], NonNullable<ExtractRouteByPath<TFragmentConfig["routes"], TPath>["queryParameters"]>[number]>;
|
|
283
|
-
}
|
|
284
|
-
declare function createClientBuilder<TConfig, TDeps, TServices extends Record<string, unknown>, const TRoutesOrFactories extends readonly AnyRouteOrFactory[]>(fragmentDefinition: FragmentBuilder<TConfig, TDeps, TServices>, publicConfig: FragnoPublicClientConfig, routesOrFactories: TRoutesOrFactories): ClientBuilder<FlattenRouteFactories<TRoutesOrFactories>, FragnoFragmentSharedConfig<FlattenRouteFactories<TRoutesOrFactories>>>;
|
|
285
|
-
//#endregion
|
|
286
|
-
export { AnyRouteOrFactory, CacheLine, ClientBuilder, CreateHookOptions, ExtractGetRoutePaths, ExtractGetRoutes, ExtractNonGetRoutePaths, ExtractOutputSchemaForPath, ExtractRouteByPath, ExtractRoutePath, FlattenRouteFactories, FragmentBuilder, FragnoClientApiError, FragnoClientError, FragnoClientFetchAbortError, FragnoClientFetchError, FragnoClientFetchNetworkError, FragnoClientHookData, FragnoClientMutatorData, FragnoClientUnknownApiError, FragnoErrorOptions, FragnoFragmentSharedConfig, FragnoInstantiatedFragment, FragnoPublicClientConfig, FragnoPublicConfig, FragnoStoreData, HasGetRoutes, IsValidGetRoutePath, ObjectContainingStoreField, RouteFactory, RouteFactoryContext, ValidateGetRoutePath, buildUrl, createClientBuilder, createFragment, defineFragment, defineRoute, defineRoutes, getCacheKey, isGetHook, isMutatorHook, isStore };
|
|
287
|
-
//# sourceMappingURL=client-XFdAy-IQ.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"client-XFdAy-IQ.d.ts","names":[],"sources":["../src/api/route.ts","../src/api/request-middleware.ts","../src/api/fragment.ts","../src/client/client-error.ts","../src/client/client.ts"],"sourcesContent":[],"mappings":"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"}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
//#region src/integrations/astro.d.ts
|
|
2
|
-
interface AstroHandlers {
|
|
3
|
-
ALL: ({
|
|
4
|
-
request
|
|
5
|
-
}: {
|
|
6
|
-
request: Request;
|
|
7
|
-
}) => Promise<Response>;
|
|
8
|
-
}
|
|
9
|
-
/**
|
|
10
|
-
* Converts a Fragno fragment handler to an Astro API route handler
|
|
11
|
-
*
|
|
12
|
-
* @param fragment - The Fragno fragment instance
|
|
13
|
-
* @returns An Astro API route handler function
|
|
14
|
-
*/
|
|
15
|
-
declare function toAstroHandler(handler: (req: Request) => Promise<Response>): AstroHandlers;
|
|
16
|
-
//#endregion
|
|
17
|
-
export { AstroHandlers, toAstroHandler };
|
|
18
|
-
//# sourceMappingURL=astro.d.ts.map
|