@sveltejs/kit 2.58.0 → 2.59.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/package.json +1 -1
- package/src/exports/internal/remote-functions.js +1 -1
- package/src/exports/public.d.ts +77 -10
- package/src/runtime/app/server/remote/command.js +7 -6
- package/src/runtime/app/server/remote/form.js +2 -1
- package/src/runtime/app/server/remote/query.js +304 -75
- package/src/runtime/app/server/remote/requested.js +109 -20
- package/src/runtime/app/server/remote/shared.js +84 -9
- package/src/runtime/client/client.js +92 -62
- package/src/runtime/client/ndjson.js +42 -0
- package/src/runtime/client/remote-functions/command.svelte.js +6 -1
- package/src/runtime/client/remote-functions/form.svelte.js +23 -6
- package/src/runtime/client/remote-functions/index.js +3 -1
- package/src/runtime/client/remote-functions/query-batch.svelte.js +105 -0
- package/src/runtime/client/remote-functions/query-live.svelte.js +636 -0
- package/src/runtime/client/remote-functions/query.svelte.js +15 -115
- package/src/runtime/client/remote-functions/shared.svelte.js +76 -23
- package/src/runtime/form-utils.js +31 -10
- package/src/runtime/server/page/load_data.js +4 -2
- package/src/runtime/server/page/render.js +4 -1
- package/src/runtime/server/remote.js +117 -9
- package/src/runtime/server/respond.js +1 -0
- package/src/runtime/shared.js +2 -2
- package/src/runtime/utils.js +0 -1
- package/src/types/internal.d.ts +45 -13
- package/src/version.js +1 -1
- package/types/index.d.ts +137 -15
- package/types/index.d.ts.map +7 -4
package/src/types/internal.d.ts
CHANGED
|
@@ -23,7 +23,8 @@ import {
|
|
|
23
23
|
Transport,
|
|
24
24
|
HandleValidationError,
|
|
25
25
|
RemoteFormIssue,
|
|
26
|
-
RemoteQuery
|
|
26
|
+
RemoteQuery,
|
|
27
|
+
RemoteLiveQuery
|
|
27
28
|
} from '@sveltejs/kit';
|
|
28
29
|
import {
|
|
29
30
|
HttpMethod,
|
|
@@ -304,6 +305,8 @@ export type RemoteFunctionResponse =
|
|
|
304
305
|
| (ServerRedirectNode & {
|
|
305
306
|
/** devalue'd Record<string, any> */
|
|
306
307
|
refreshes?: string;
|
|
308
|
+
/** devalue'd Record<string, any> */
|
|
309
|
+
reconnects?: string;
|
|
307
310
|
})
|
|
308
311
|
| ServerErrorNode
|
|
309
312
|
| {
|
|
@@ -311,22 +314,33 @@ export type RemoteFunctionResponse =
|
|
|
311
314
|
result: string;
|
|
312
315
|
/** devalue'd Record<string, any> */
|
|
313
316
|
refreshes: string | undefined;
|
|
317
|
+
/** devalue'd Record<string, any> */
|
|
318
|
+
reconnects: string | undefined;
|
|
314
319
|
};
|
|
315
320
|
|
|
316
|
-
export type
|
|
321
|
+
export type RemoteSingleflightResult = {
|
|
317
322
|
type: 'result';
|
|
318
323
|
data: any;
|
|
319
324
|
};
|
|
320
325
|
|
|
321
|
-
export type
|
|
326
|
+
export type RemoteSingleflightError = {
|
|
322
327
|
type: 'error';
|
|
323
328
|
status?: number;
|
|
324
329
|
error: App.Error;
|
|
325
330
|
};
|
|
326
331
|
|
|
327
|
-
export type
|
|
332
|
+
export type RemoteSingleflightEntry = RemoteSingleflightResult | RemoteSingleflightError;
|
|
333
|
+
|
|
334
|
+
export type RemoteSingleflightMap = Record<string, RemoteSingleflightEntry>;
|
|
328
335
|
|
|
329
|
-
export type
|
|
336
|
+
export type RemoteLiveQueryUserFunctionReturnType<Output> = MaybePromise<
|
|
337
|
+
| AsyncGenerator<Output>
|
|
338
|
+
| AsyncIterator<Output>
|
|
339
|
+
| AsyncIterable<Output>
|
|
340
|
+
| Generator<Output>
|
|
341
|
+
| Iterator<Output>
|
|
342
|
+
| Iterable<Output>
|
|
343
|
+
>;
|
|
330
344
|
|
|
331
345
|
/**
|
|
332
346
|
* Signals a successful response of the server `load` function.
|
|
@@ -605,16 +619,30 @@ export interface RemoteQueryInternals extends BaseRemoteInternals {
|
|
|
605
619
|
}
|
|
606
620
|
export interface RemoteQueryLiveInternals extends BaseRemoteInternals {
|
|
607
621
|
type: 'query_live';
|
|
608
|
-
|
|
609
|
-
|
|
610
|
-
|
|
611
|
-
|
|
612
|
-
|
|
622
|
+
validate: (arg?: any) => MaybePromise<any>;
|
|
623
|
+
run(event: RequestEvent, state: RequestState, arg: any): AsyncGenerator<any>;
|
|
624
|
+
/**
|
|
625
|
+
* Creates a `RemoteLiveQuery` bound directly to a specific client payload (the
|
|
626
|
+
* stringified raw argument) and a pre-validated argument, skipping the query
|
|
627
|
+
* wrapper's re-validation step. Used by `requested(liveQuery)` to ensure
|
|
628
|
+
* `reconnect()` targets the same cache key the client is listening on even
|
|
629
|
+
* when the schema transforms the input.
|
|
630
|
+
*/
|
|
631
|
+
bind(payload: string, arg: any): RemoteLiveQuery<any>;
|
|
613
632
|
}
|
|
614
633
|
|
|
615
634
|
export interface RemoteQueryBatchInternals extends BaseRemoteInternals {
|
|
616
635
|
type: 'query_batch';
|
|
636
|
+
validate: (arg?: any) => MaybePromise<any>;
|
|
617
637
|
run: (args: any[], options: SSROptions) => Promise<any[]>;
|
|
638
|
+
/**
|
|
639
|
+
* Creates a `RemoteQuery` bound directly to a specific client payload (the
|
|
640
|
+
* stringified raw argument) and a pre-validated argument, skipping the query
|
|
641
|
+
* wrapper's re-validation step. Used by `requested(batchQuery)` to ensure
|
|
642
|
+
* `refresh()` / `set()` target the same cache key the client is listening on
|
|
643
|
+
* even when the schema transforms the input.
|
|
644
|
+
*/
|
|
645
|
+
bind(payload: string, arg: any): RemoteQuery<any>;
|
|
618
646
|
}
|
|
619
647
|
|
|
620
648
|
export interface RemoteCommandInternals extends BaseRemoteInternals {
|
|
@@ -633,10 +661,13 @@ export interface RemotePrerenderInternals extends BaseRemoteInternals {
|
|
|
633
661
|
inputs?: RemotePrerenderInputsGenerator;
|
|
634
662
|
}
|
|
635
663
|
|
|
636
|
-
export type
|
|
664
|
+
export type RemoteAnyQueryInternals =
|
|
637
665
|
| RemoteQueryInternals
|
|
638
|
-
| RemoteQueryLiveInternals
|
|
639
666
|
| RemoteQueryBatchInternals
|
|
667
|
+
| RemoteQueryLiveInternals;
|
|
668
|
+
|
|
669
|
+
export type RemoteInternals =
|
|
670
|
+
| RemoteAnyQueryInternals
|
|
640
671
|
| RemoteCommandInternals
|
|
641
672
|
| RemoteFormInternals
|
|
642
673
|
| RemotePrerenderInternals;
|
|
@@ -670,7 +701,8 @@ export interface RequestState {
|
|
|
670
701
|
Record<string, { serialize: boolean; data: MaybePromise<any> }>
|
|
671
702
|
>;
|
|
672
703
|
forms: null | Map<any, any>;
|
|
673
|
-
refreshes: null |
|
|
704
|
+
refreshes: null | Map<string, Promise<any>>;
|
|
705
|
+
reconnects: null | Map<string, Promise<any>>;
|
|
674
706
|
requested: null | Map<string, string[]>;
|
|
675
707
|
};
|
|
676
708
|
readonly is_in_remote_function: boolean;
|
package/src/version.js
CHANGED
package/types/index.d.ts
CHANGED
|
@@ -27,7 +27,7 @@ declare module '@sveltejs/kit' {
|
|
|
27
27
|
supports?: {
|
|
28
28
|
/**
|
|
29
29
|
* Test support for `read` from `$app/server`.
|
|
30
|
-
* @param details.config The merged route config
|
|
30
|
+
* @param details.config The merged adapter-specific route config exported from the route with `export const config`
|
|
31
31
|
*/
|
|
32
32
|
read?: (details: { config: any; route: { id: string } }) => boolean;
|
|
33
33
|
|
|
@@ -1427,17 +1427,29 @@ declare module '@sveltejs/kit' {
|
|
|
1427
1427
|
export type ParamMatcher = (param: string) => boolean;
|
|
1428
1428
|
|
|
1429
1429
|
/**
|
|
1430
|
-
* A single entry yielded by [`requested`](https://svelte.dev/docs/kit/$app-server#requested)
|
|
1431
|
-
* `arg` is the validated argument (the input *after*
|
|
1432
|
-
* transformed it, if applicable); `query` is a
|
|
1433
|
-
* original cache key, so `refresh()` / `set()` will
|
|
1430
|
+
* A single entry yielded by [`requested`](https://svelte.dev/docs/kit/$app-server#requested)
|
|
1431
|
+
* when called with a regular `query`. `arg` is the validated argument (the input *after*
|
|
1432
|
+
* the query's schema validated and transformed it, if applicable); `query` is a
|
|
1433
|
+
* `RemoteQuery` bound to the client's original cache key, so `refresh()` / `set()` will
|
|
1434
|
+
* update the correct client entry.
|
|
1434
1435
|
*/
|
|
1435
1436
|
export type RequestedEntry<Validated, Output> = {
|
|
1436
1437
|
arg: Validated;
|
|
1437
1438
|
query: RemoteQuery<Output>;
|
|
1438
1439
|
};
|
|
1439
1440
|
|
|
1440
|
-
|
|
1441
|
+
/**
|
|
1442
|
+
* A single entry yielded by [`requested`](https://svelte.dev/docs/kit/$app-server#requested)
|
|
1443
|
+
* when called with a `query.live`. `arg` is the validated argument; `query` is a
|
|
1444
|
+
* `RemoteLiveQuery` bound to the client's original cache key, so `reconnect()` targets
|
|
1445
|
+
* the correct client subscription.
|
|
1446
|
+
*/
|
|
1447
|
+
export type LiveRequestedEntry<Validated, Output> = {
|
|
1448
|
+
arg: Validated;
|
|
1449
|
+
query: RemoteLiveQuery<Output>;
|
|
1450
|
+
};
|
|
1451
|
+
|
|
1452
|
+
export type QueryRequestedResult<Validated, Output> = Iterable<RequestedEntry<Validated, Output>> &
|
|
1441
1453
|
AsyncIterable<RequestedEntry<Validated, Output>> & {
|
|
1442
1454
|
/**
|
|
1443
1455
|
* Call `refresh` on all queries selected by this `requested` invocation.
|
|
@@ -1453,6 +1465,28 @@ declare module '@sveltejs/kit' {
|
|
|
1453
1465
|
refreshAll: () => Promise<void>;
|
|
1454
1466
|
};
|
|
1455
1467
|
|
|
1468
|
+
export type LiveQueryRequestedResult<Validated, Output> = Iterable<
|
|
1469
|
+
LiveRequestedEntry<Validated, Output>
|
|
1470
|
+
> &
|
|
1471
|
+
AsyncIterable<LiveRequestedEntry<Validated, Output>> & {
|
|
1472
|
+
/**
|
|
1473
|
+
* Call `reconnect` on all live queries selected by this `requested` invocation.
|
|
1474
|
+
* This is identical to:
|
|
1475
|
+
* ```ts
|
|
1476
|
+
* import { requested } from '$app/server';
|
|
1477
|
+
*
|
|
1478
|
+
* for await (const { query } of requested(liveQuery, ...)) {
|
|
1479
|
+
* void query.reconnect();
|
|
1480
|
+
* }
|
|
1481
|
+
* ```
|
|
1482
|
+
*/
|
|
1483
|
+
reconnectAll: () => Promise<void>;
|
|
1484
|
+
};
|
|
1485
|
+
|
|
1486
|
+
export type RequestedResult<Validated, Output> =
|
|
1487
|
+
| QueryRequestedResult<Validated, Output>
|
|
1488
|
+
| LiveQueryRequestedResult<Validated, Output>;
|
|
1489
|
+
|
|
1456
1490
|
export interface RequestEvent<
|
|
1457
1491
|
Params extends AppLayoutParams<'/'> = AppLayoutParams<'/'>,
|
|
1458
1492
|
RouteId extends AppRouteId | null = AppRouteId | null
|
|
@@ -1869,6 +1903,7 @@ declare module '@sveltejs/kit' {
|
|
|
1869
1903
|
'aria-invalid': boolean | 'false' | 'true' | undefined;
|
|
1870
1904
|
get checked(): boolean;
|
|
1871
1905
|
set checked(value: boolean);
|
|
1906
|
+
readonly defaultChecked?: boolean;
|
|
1872
1907
|
}
|
|
1873
1908
|
: T extends 'file'
|
|
1874
1909
|
? {
|
|
@@ -1899,6 +1934,7 @@ declare module '@sveltejs/kit' {
|
|
|
1899
1934
|
'aria-invalid': boolean | 'false' | 'true' | undefined;
|
|
1900
1935
|
get value(): string | number;
|
|
1901
1936
|
set value(v: string | number);
|
|
1937
|
+
readonly defaultValue?: string | number;
|
|
1902
1938
|
}
|
|
1903
1939
|
: {
|
|
1904
1940
|
name: string;
|
|
@@ -1906,6 +1942,7 @@ declare module '@sveltejs/kit' {
|
|
|
1906
1942
|
'aria-invalid': boolean | 'false' | 'true' | undefined;
|
|
1907
1943
|
get value(): string | number;
|
|
1908
1944
|
set value(v: string | number);
|
|
1945
|
+
readonly defaultValue?: string | number;
|
|
1909
1946
|
};
|
|
1910
1947
|
|
|
1911
1948
|
type RemoteFormFieldMethods<T> = {
|
|
@@ -1931,7 +1968,9 @@ declare module '@sveltejs/kit' {
|
|
|
1931
1968
|
type AsArgs<Type extends keyof InputTypeMap, Value> = Type extends 'checkbox'
|
|
1932
1969
|
? Value extends string[]
|
|
1933
1970
|
? [type: Type, value: Value[number] | (string & {})]
|
|
1934
|
-
:
|
|
1971
|
+
: Value extends boolean
|
|
1972
|
+
? [type: Type] | [type: Type, value: boolean]
|
|
1973
|
+
: [type: Type] | [type: Type, value: Value | (string & {})]
|
|
1935
1974
|
: Type extends 'radio' | 'submit' | 'hidden'
|
|
1936
1975
|
? [type: Type, value: Value | (string & {})]
|
|
1937
1976
|
: Type extends 'file' | 'file multiple'
|
|
@@ -2068,7 +2107,7 @@ declare module '@sveltejs/kit' {
|
|
|
2068
2107
|
}
|
|
2069
2108
|
|
|
2070
2109
|
/**
|
|
2071
|
-
* The
|
|
2110
|
+
* The type of a remote `form` function. See [Remote functions](https://svelte.dev/docs/kit/remote-functions#form) for full documentation.
|
|
2072
2111
|
*/
|
|
2073
2112
|
export type RemoteForm<Input extends RemoteFormInput | void, Output> = {
|
|
2074
2113
|
/** Attachment that sets up an event handler that intercepts the form submission on the client to prevent a full page reload */
|
|
@@ -2123,7 +2162,7 @@ declare module '@sveltejs/kit' {
|
|
|
2123
2162
|
};
|
|
2124
2163
|
|
|
2125
2164
|
/**
|
|
2126
|
-
* The
|
|
2165
|
+
* The type of a remote `command` function. See [Remote functions](https://svelte.dev/docs/kit/remote-functions#command) for full documentation.
|
|
2127
2166
|
*/
|
|
2128
2167
|
export type RemoteCommand<Input, Output> = {
|
|
2129
2168
|
(arg: undefined extends Input ? Input | void : Input): Promise<Output> & {
|
|
@@ -2135,7 +2174,9 @@ declare module '@sveltejs/kit' {
|
|
|
2135
2174
|
|
|
2136
2175
|
export type RemoteQueryUpdate =
|
|
2137
2176
|
| RemoteQuery<any>
|
|
2177
|
+
| RemoteLiveQuery<any>
|
|
2138
2178
|
| RemoteQueryFunction<any, any>
|
|
2179
|
+
| RemoteLiveQueryFunction<any, any>
|
|
2139
2180
|
| RemoteQueryOverride;
|
|
2140
2181
|
|
|
2141
2182
|
export type RemoteResource<T> = Promise<T> & {
|
|
@@ -2199,10 +2240,25 @@ declare module '@sveltejs/kit' {
|
|
|
2199
2240
|
withOverride(update: (current: T) => T): RemoteQueryOverride;
|
|
2200
2241
|
};
|
|
2201
2242
|
|
|
2243
|
+
export type RemoteLiveQuery<T> = RemoteResource<T> & {
|
|
2244
|
+
/**
|
|
2245
|
+
* Returns an async iterator with live updates.
|
|
2246
|
+
* Unlike awaiting the resource directly, this can only be used _outside_ render
|
|
2247
|
+
* (i.e. in load functions, event handlers and so on)
|
|
2248
|
+
*/
|
|
2249
|
+
run(): AsyncGenerator<T>;
|
|
2250
|
+
/** `true` if the live stream is currently connected. */
|
|
2251
|
+
readonly connected: boolean;
|
|
2252
|
+
/** `true` once the current live stream iterator is done. */
|
|
2253
|
+
readonly done: boolean;
|
|
2254
|
+
/** Reconnects the live stream immediately. */
|
|
2255
|
+
reconnect(): Promise<void>;
|
|
2256
|
+
};
|
|
2257
|
+
|
|
2202
2258
|
export type RemoteQueryOverride = () => void;
|
|
2203
2259
|
|
|
2204
2260
|
/**
|
|
2205
|
-
* The
|
|
2261
|
+
* The type of a remote `prerender` function. See [Remote functions](https://svelte.dev/docs/kit/remote-functions#prerender) for full documentation.
|
|
2206
2262
|
*/
|
|
2207
2263
|
export type RemotePrerenderFunction<Input, Output> = (
|
|
2208
2264
|
arg: undefined extends Input ? Input | void : Input
|
|
@@ -2223,6 +2279,17 @@ declare module '@sveltejs/kit' {
|
|
|
2223
2279
|
export type RemoteQueryFunction<Input, Output, _Validated = Input> = (
|
|
2224
2280
|
arg: undefined extends Input ? Input | void : Input
|
|
2225
2281
|
) => RemoteQuery<Output>;
|
|
2282
|
+
|
|
2283
|
+
/**
|
|
2284
|
+
* The type of a remote `query.live` function. See [Remote functions](https://svelte.dev/docs/kit/remote-functions#query.live) for full documentation.
|
|
2285
|
+
*
|
|
2286
|
+
* The optional `Validated` generic parameter represents the argument type *after* the
|
|
2287
|
+
* query's schema has validated and (optionally) transformed it, and matches the type
|
|
2288
|
+
* yielded by [`requested`](https://svelte.dev/docs/kit/$app-server#requested).
|
|
2289
|
+
*/
|
|
2290
|
+
export type RemoteLiveQueryFunction<Input, Output, _Validated = Input> = (
|
|
2291
|
+
arg: undefined extends Input ? Input | void : Input
|
|
2292
|
+
) => RemoteLiveQuery<Output>;
|
|
2226
2293
|
interface AdapterEntry {
|
|
2227
2294
|
/**
|
|
2228
2295
|
* A string that uniquely identifies an HTTP service (e.g. serverless function) and is used for deduplication.
|
|
@@ -3289,7 +3356,7 @@ declare module '$app/paths' {
|
|
|
3289
3356
|
}
|
|
3290
3357
|
|
|
3291
3358
|
declare module '$app/server' {
|
|
3292
|
-
import type { RequestEvent, RemoteCommand, RemoteForm, RemoteFormInput, InvalidField, RemotePrerenderFunction, RemoteQueryFunction,
|
|
3359
|
+
import type { RequestEvent, RemoteCommand, RemoteForm, RemoteFormInput, InvalidField, RemotePrerenderFunction, RemoteQueryFunction, RemoteLiveQueryFunction, QueryRequestedResult, LiveQueryRequestedResult } from '@sveltejs/kit';
|
|
3293
3360
|
import type { StandardSchemaV1 } from '@standard-schema/spec';
|
|
3294
3361
|
/**
|
|
3295
3362
|
* Read the contents of an imported asset from the filesystem
|
|
@@ -3319,7 +3386,7 @@ declare module '$app/server' {
|
|
|
3319
3386
|
*
|
|
3320
3387
|
* @since 2.27
|
|
3321
3388
|
*/
|
|
3322
|
-
export function command<Output>(fn: () => Output): RemoteCommand<void, Output>;
|
|
3389
|
+
export function command<Output>(fn: () => MaybePromise<Output>): RemoteCommand<void, Output>;
|
|
3323
3390
|
/**
|
|
3324
3391
|
* Creates a remote command. When called from the browser, the function will be invoked on the server via a `fetch` call.
|
|
3325
3392
|
*
|
|
@@ -3327,7 +3394,7 @@ declare module '$app/server' {
|
|
|
3327
3394
|
*
|
|
3328
3395
|
* @since 2.27
|
|
3329
3396
|
*/
|
|
3330
|
-
export function command<Input, Output>(validate: "unchecked", fn: (arg: Input) => Output): RemoteCommand<Input, Output>;
|
|
3397
|
+
export function command<Input, Output>(validate: "unchecked", fn: (arg: Input) => MaybePromise<Output>): RemoteCommand<Input, Output>;
|
|
3331
3398
|
/**
|
|
3332
3399
|
* Creates a remote command. When called from the browser, the function will be invoked on the server via a `fetch` call.
|
|
3333
3400
|
*
|
|
@@ -3335,7 +3402,7 @@ declare module '$app/server' {
|
|
|
3335
3402
|
*
|
|
3336
3403
|
* @since 2.27
|
|
3337
3404
|
*/
|
|
3338
|
-
export function command<Schema extends StandardSchemaV1, Output>(validate: Schema, fn: (arg: StandardSchemaV1.InferOutput<Schema>) => Output): RemoteCommand<StandardSchemaV1.InferInput<Schema>, Output>;
|
|
3405
|
+
export function command<Schema extends StandardSchemaV1, Output>(validate: Schema, fn: (arg: StandardSchemaV1.InferOutput<Schema>) => MaybePromise<Output>): RemoteCommand<StandardSchemaV1.InferInput<Schema>, Output>;
|
|
3339
3406
|
/**
|
|
3340
3407
|
* Creates a form object that can be spread onto a `<form>` element.
|
|
3341
3408
|
*
|
|
@@ -3434,6 +3501,17 @@ declare module '$app/server' {
|
|
|
3434
3501
|
* @since 2.35
|
|
3435
3502
|
*/
|
|
3436
3503
|
function batch<Schema extends StandardSchemaV1, Output>(schema: Schema, fn: (args: StandardSchemaV1.InferOutput<Schema>[]) => MaybePromise<(arg: StandardSchemaV1.InferOutput<Schema>, idx: number) => Output>): RemoteQueryFunction<StandardSchemaV1.InferInput<Schema>, Output, StandardSchemaV1.InferOutput<Schema>>;
|
|
3504
|
+
/**
|
|
3505
|
+
* Creates a live remote query. When called from the browser, the function will be invoked on the server via a streaming `fetch` call.
|
|
3506
|
+
*
|
|
3507
|
+
* See [Remote functions](https://svelte.dev/docs/kit/remote-functions#query.live) for full documentation.
|
|
3508
|
+
*
|
|
3509
|
+
* */
|
|
3510
|
+
function live<Output>(fn: (arg: void) => RemoteLiveQueryUserFunctionReturnType<Output>): RemoteLiveQueryFunction<void, Output>;
|
|
3511
|
+
|
|
3512
|
+
function live<Input, Output>(validate: "unchecked", fn: (arg: Input) => RemoteLiveQueryUserFunctionReturnType<Output>): RemoteLiveQueryFunction<Input, Output>;
|
|
3513
|
+
|
|
3514
|
+
function live<Schema extends StandardSchemaV1, Output>(schema: Schema, fn: (arg: StandardSchemaV1.InferOutput<Schema>) => RemoteLiveQueryUserFunctionReturnType<Output>): RemoteLiveQueryFunction<StandardSchemaV1.InferInput<Schema>, Output, StandardSchemaV1.InferOutput<Schema>>;
|
|
3437
3515
|
}
|
|
3438
3516
|
/**
|
|
3439
3517
|
* In the context of a remote `command` or `form` request, returns an iterable
|
|
@@ -3461,14 +3539,58 @@ declare module '$app/server' {
|
|
|
3461
3539
|
*
|
|
3462
3540
|
* As a shorthand for the above, you can also call `refreshAll` on the result:
|
|
3463
3541
|
*
|
|
3542
|
+
* @example
|
|
3464
3543
|
* ```ts
|
|
3465
3544
|
* import { requested } from '$app/server';
|
|
3466
3545
|
*
|
|
3467
3546
|
* await requested(getPost, 5).refreshAll();
|
|
3468
3547
|
* ```
|
|
3469
3548
|
*
|
|
3549
|
+
* Works with `query.batch` as well — refreshes for individual entries are
|
|
3550
|
+
* collected into a single batched call.
|
|
3551
|
+
*
|
|
3552
|
+
* For live queries, the same applies, but with `reconnect` and `reconnectAll`.
|
|
3553
|
+
*
|
|
3470
3554
|
* */
|
|
3471
|
-
export function requested<Input, Output, Validated = Input>(query: RemoteQueryFunction<Input, Output, Validated>, limit: number):
|
|
3555
|
+
export function requested<Input, Output, Validated = Input>(query: RemoteQueryFunction<Input, Output, Validated>, limit: number): QueryRequestedResult<Validated, Output>;
|
|
3556
|
+
/**
|
|
3557
|
+
* In the context of a remote `command` or `form` request, returns an iterable
|
|
3558
|
+
* of `{ arg, query }` entries for the reconnects requested by the client, up to
|
|
3559
|
+
* the supplied `limit`. Each `query` is a `RemoteLiveQuery` bound to the original
|
|
3560
|
+
* client-side cache key, so `reconnect()` propagates correctly even when
|
|
3561
|
+
* the query's schema transforms the input. `arg` is the *validated* argument.
|
|
3562
|
+
*
|
|
3563
|
+
* Arguments that fail validation or exceed `limit` are recorded as failures in
|
|
3564
|
+
* the response to the client.
|
|
3565
|
+
*
|
|
3566
|
+
* @example
|
|
3567
|
+
* ```ts
|
|
3568
|
+
* import { requested } from '$app/server';
|
|
3569
|
+
*
|
|
3570
|
+
* for (const { query } of requested(getPost, 5)) {
|
|
3571
|
+
* void query.reconnect();
|
|
3572
|
+
* }
|
|
3573
|
+
* ```
|
|
3574
|
+
*
|
|
3575
|
+
* As a shorthand, you can also call `reconnectAll` on the result:
|
|
3576
|
+
*
|
|
3577
|
+
* @example
|
|
3578
|
+
* ```ts
|
|
3579
|
+
* import { requested } from '$app/server';
|
|
3580
|
+
*
|
|
3581
|
+
* await requested(getPost, 5).reconnectAll();
|
|
3582
|
+
* ```
|
|
3583
|
+
*
|
|
3584
|
+
* */
|
|
3585
|
+
export function requested<Input, Output, Validated = Input>(query: RemoteLiveQueryFunction<Input, Output, Validated>, limit: number): LiveQueryRequestedResult<Validated, Output>;
|
|
3586
|
+
type RemoteLiveQueryUserFunctionReturnType<Output> = MaybePromise<
|
|
3587
|
+
| AsyncGenerator<Output>
|
|
3588
|
+
| AsyncIterator<Output>
|
|
3589
|
+
| AsyncIterable<Output>
|
|
3590
|
+
| Generator<Output>
|
|
3591
|
+
| Iterator<Output>
|
|
3592
|
+
| Iterable<Output>
|
|
3593
|
+
>;
|
|
3472
3594
|
type RemotePrerenderInputsGenerator<Input = any> = () => MaybePromise<Input[]>;
|
|
3473
3595
|
type MaybePromise<T> = T | Promise<T>;
|
|
3474
3596
|
|
package/types/index.d.ts.map
CHANGED
|
@@ -45,6 +45,9 @@
|
|
|
45
45
|
"Page",
|
|
46
46
|
"ParamMatcher",
|
|
47
47
|
"RequestedEntry",
|
|
48
|
+
"LiveRequestedEntry",
|
|
49
|
+
"QueryRequestedResult",
|
|
50
|
+
"LiveQueryRequestedResult",
|
|
48
51
|
"RequestedResult",
|
|
49
52
|
"RequestEvent",
|
|
50
53
|
"RequestHandler",
|
|
@@ -88,9 +91,11 @@
|
|
|
88
91
|
"RemoteQueryUpdate",
|
|
89
92
|
"RemoteResource",
|
|
90
93
|
"RemoteQuery",
|
|
94
|
+
"RemoteLiveQuery",
|
|
91
95
|
"RemoteQueryOverride",
|
|
92
96
|
"RemotePrerenderFunction",
|
|
93
97
|
"RemoteQueryFunction",
|
|
98
|
+
"RemoteLiveQueryFunction",
|
|
94
99
|
"AdapterEntry",
|
|
95
100
|
"Csp",
|
|
96
101
|
"CspDirectives",
|
|
@@ -180,7 +185,7 @@
|
|
|
180
185
|
"match",
|
|
181
186
|
"read",
|
|
182
187
|
"getRequestEvent",
|
|
183
|
-
"
|
|
188
|
+
"RemoteLiveQueryUserFunctionReturnType",
|
|
184
189
|
"RemotePrerenderInputsGenerator",
|
|
185
190
|
"page",
|
|
186
191
|
"navigating",
|
|
@@ -207,7 +212,6 @@
|
|
|
207
212
|
"../src/runtime/app/paths/client.js",
|
|
208
213
|
"../src/runtime/app/server/index.js",
|
|
209
214
|
"../src/exports/internal/event.js",
|
|
210
|
-
"../src/runtime/app/server/remote/requested.js",
|
|
211
215
|
"../src/runtime/app/state/index.js",
|
|
212
216
|
"../src/runtime/app/stores.js"
|
|
213
217
|
],
|
|
@@ -232,9 +236,8 @@
|
|
|
232
236
|
null,
|
|
233
237
|
null,
|
|
234
238
|
null,
|
|
235
|
-
null,
|
|
236
239
|
null
|
|
237
240
|
],
|
|
238
|
-
"mappings": ";;;;;;;;MAiCKA,IAAIA;;;;;kBAKQC,OAAOA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;aAiCZC,cAAcA;;;;;;aAMdC,cAAcA;;;;;;;;MAQrBC,aAAaA;;;;;OAKJC,YAAYA;;kBAETC,aAAaA;;;;;;MAMzBC,qBAAqBA;;;;;;;;;;;kBAWTC,OAAOA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBA8IPC,MAAMA;;;;;;;;;;;kBAWNC,OAAOA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBA4DPC,QAAQA;;;;;;;;kBAQRC,SAASA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;aAklBdC,MAAMA;;;;;;;;;;;aAWNC,iBAAiBA;;;;;;;;;;;;aAYjBC,qBAAqBA;;;;;;;;;aASrBC,iBAAiBA;;;;;;;;;;aAUjBC,WAAWA;;;;;;;;;;aAUXC,UAAUA;;;;;;aAMVC,UAAUA;;;;;;aAMVC,OAAOA;;;;;;;;;;;;;;;;;;;;;;;;;;aA0BPC,SAASA;;;;;kBAKJC,WAAWA;;;;;;;;;;;;aAYhBC,IAAIA;;;;;;;;;;;;kBAYCC,SAASA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAyHTC,eAAeA;;;;;;;;;;;;;;;;;;;;;;;;;;kBA0BfC,gBAAgBA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;aA6CrBC,cAAcA;;kBAETC,cAAcA;;;;;;;;;;;;;;;;;;;;kBAoBdC,eAAeA;;;;;;;;;;;;;;;;;;aAkBpBC,kBAAkBA;;kBAEbC,cAAcA;;;;;;;;;;;;;;;kBAedC,eAAeA;;;;;;;;;;;;;;;kBAefC,oBAAoBA;;;;;;;;;;;;;;;;;;;;kBAoBpBC,kBAAkBA;;;;;;;;;;;;;;;;;;kBAkBlBC,cAAcA;;;;;;;;;;;;;;;;;;;;aAoBnBC,UAAUA;;;;;;;;;aASVC,cAAcA;;;;;;;;;;aAUdC,UAAUA;;;;;;;;;;;aAWVC,aAAaA;;;;;;;;;;;kBAWRC,IAAIA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;aA8CTC,YAAYA
|
|
241
|
+
"mappings": "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",
|
|
239
242
|
"ignoreList": []
|
|
240
243
|
}
|