@sveltejs/kit 2.46.0 → 2.46.2

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 CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sveltejs/kit",
3
- "version": "2.46.0",
3
+ "version": "2.46.2",
4
4
  "description": "SvelteKit is the fastest way to build Svelte apps",
5
5
  "keywords": [
6
6
  "framework",
@@ -1850,19 +1850,23 @@ export type RemoteFormFieldType<T> = {
1850
1850
  // Input element properties based on type
1851
1851
  type InputElementProps<T extends keyof InputTypeMap> = T extends 'checkbox' | 'radio'
1852
1852
  ? {
1853
+ name: string;
1853
1854
  type: T;
1855
+ value?: string;
1854
1856
  'aria-invalid': boolean | 'false' | 'true' | undefined;
1855
1857
  get checked(): boolean;
1856
1858
  set checked(value: boolean);
1857
1859
  }
1858
1860
  : T extends 'file'
1859
1861
  ? {
1862
+ name: string;
1860
1863
  type: 'file';
1861
1864
  'aria-invalid': boolean | 'false' | 'true' | undefined;
1862
1865
  get files(): FileList | null;
1863
1866
  set files(v: FileList | null);
1864
1867
  }
1865
1868
  : {
1869
+ name: string;
1866
1870
  type: T;
1867
1871
  'aria-invalid': boolean | 'false' | 'true' | undefined;
1868
1872
  get value(): string | number;
@@ -1882,10 +1886,10 @@ export type RemoteFormFieldValue = string | string[] | number | boolean | File |
1882
1886
 
1883
1887
  type AsArgs<Type extends keyof InputTypeMap, Value> = Type extends 'checkbox'
1884
1888
  ? Value extends string[]
1885
- ? [type: 'checkbox', value: Value[number] | (string & {})]
1889
+ ? [type: Type, value: Value[number] | (string & {})]
1886
1890
  : [type: Type]
1887
- : Type extends 'radio'
1888
- ? [type: 'radio', value: Value | (string & {})]
1891
+ : Type extends 'radio' | 'submit' | 'hidden'
1892
+ ? [type: Type, value: Value | (string & {})]
1889
1893
  : [type: Type];
1890
1894
 
1891
1895
  /**
@@ -1971,19 +1975,6 @@ type InvalidField<T> =
1971
1975
  * If an issue is a `string`, it applies to the form as a whole (and will show up in `fields.allIssues()`)
1972
1976
  * Access properties to create field-specific issues: `invalid.fieldName('message')`.
1973
1977
  * The type structure mirrors the input data structure for type-safe field access.
1974
- *
1975
- * @example
1976
- * ```ts
1977
- * invalid('Username or password is invalid');
1978
- * ```
1979
- *
1980
- * @example
1981
- * ```ts
1982
- * invalid(
1983
- * invalid.username('Username is taken'),
1984
- * invalid.items[0].qty('Insufficient stock')
1985
- * );
1986
- * ```
1987
1978
  */
1988
1979
  export type Invalid<Input = any> = ((...issues: Array<string | StandardSchemaV1.Issue>) => never) &
1989
1980
  InvalidField<Input>;
@@ -731,7 +731,7 @@ async function kit({ svelte_config }) {
731
731
 
732
732
  if (!is_outdated_rollup) {
733
733
  // @ts-expect-error only exists in more recent Rollup versions https://rollupjs.org/configuration-options/#output-onlyexplicitmanualchunks
734
- config.build.rollupOptions.onlyExplicitManualChunks = true;
734
+ config.build.rollupOptions.output.onlyExplicitManualChunks = true;
735
735
  }
736
736
  },
737
737
 
@@ -209,6 +209,7 @@ export function form(validate_or_fn, maybe_fn) {
209
209
  return create_field_proxy(
210
210
  {},
211
211
  () => data?.input ?? {},
212
+ () => {},
212
213
  (path, value) => {
213
214
  if (data) {
214
215
  // don't override a submission
@@ -16,7 +16,9 @@ import {
16
16
  create_field_proxy,
17
17
  deep_set,
18
18
  set_nested_value,
19
- throw_on_old_property_access
19
+ throw_on_old_property_access,
20
+ split_path,
21
+ build_path_string
20
22
  } from '../../form-utils.svelte.js';
21
23
 
22
24
  /**
@@ -62,6 +64,13 @@ export function form(id) {
62
64
  */
63
65
  let input = $state.raw({});
64
66
 
67
+ // TODO 3.0: Remove versions state and related logic; it's a workaround for $derived not updating when created inside $effects
68
+ /**
69
+ * This allows us to update individual fields granularly
70
+ * @type {Record<string, number>}
71
+ */
72
+ const versions = $state({});
73
+
65
74
  /** @type {Record<string, InternalRemoteFormIssue[]>} */
66
75
  let issues = $state.raw({});
67
76
 
@@ -212,6 +221,13 @@ export function form(id) {
212
221
  } else {
213
222
  input = {};
214
223
 
224
+ for (const [key, value] of Object.entries(versions)) {
225
+ if (value !== undefined) {
226
+ versions[key] ??= 0;
227
+ versions[key] += 1;
228
+ }
229
+ }
230
+
215
231
  if (form_result.refreshes) {
216
232
  refresh_queries(form_result.refreshes, updates);
217
233
  } else {
@@ -390,6 +406,18 @@ export function form(id) {
390
406
  element.type === 'checkbox' && !element.checked ? null : element.value
391
407
  );
392
408
  }
409
+
410
+ versions[name] ??= 0;
411
+ versions[name] += 1;
412
+
413
+ const path = split_path(name);
414
+
415
+ while (path.pop() !== undefined) {
416
+ const name = build_path_string(path);
417
+
418
+ versions[name] ??= 0;
419
+ versions[name] += 1;
420
+ }
393
421
  });
394
422
 
395
423
  return () => {
@@ -482,6 +510,7 @@ export function form(id) {
482
510
  create_field_proxy(
483
511
  {},
484
512
  () => input,
513
+ (path) => versions[path],
485
514
  (path, value) => {
486
515
  if (path.length === 0) {
487
516
  input = value;
@@ -2,7 +2,7 @@
2
2
  /** @import { RemoteFunctionResponse } from 'types' */
3
3
  /** @import { Query } from './query.svelte.js' */
4
4
  import * as devalue from 'devalue';
5
- import { app, goto, query_map } from '../client.js';
5
+ import { app, goto, query_map, remote_responses } from '../client.js';
6
6
  import { HttpError, Redirect } from '@sveltejs/kit/internal';
7
7
  import { tick } from 'svelte';
8
8
  import { create_remote_cache_key, stringify_remote_arg } from '../../shared.js';
@@ -62,6 +62,7 @@ export function create_remote_function(id, create) {
62
62
  void tick().then(() => {
63
63
  if (!entry.count && entry === query_map.get(cache_key)) {
64
64
  query_map.delete(cache_key);
65
+ delete remote_responses[cache_key];
65
66
  }
66
67
  });
67
68
  }
@@ -3,6 +3,7 @@
3
3
  /** @import { StandardSchemaV1 } from '@standard-schema/spec' */
4
4
 
5
5
  import { DEV } from 'esm-env';
6
+ import { untrack } from 'svelte';
6
7
 
7
8
  /**
8
9
  * Sets a value in a nested object using a path string, not mutating the original object but returning a new object
@@ -174,19 +175,27 @@ export function deep_get(object, path) {
174
175
  * Creates a proxy-based field accessor for form data
175
176
  * @param {any} target - Function or empty POJO
176
177
  * @param {() => Record<string, any>} get_input - Function to get current input data
178
+ * @param {(path: string) => void} depend - Function to make an effect depend on a specific field
177
179
  * @param {(path: (string | number)[], value: any) => void} set_input - Function to set input data
178
180
  * @param {() => Record<string, InternalRemoteFormIssue[]>} get_issues - Function to get current issues
179
181
  * @param {(string | number)[]} path - Current access path
180
182
  * @returns {any} Proxy object with name(), value(), and issues() methods
181
183
  */
182
- export function create_field_proxy(target, get_input, set_input, get_issues, path = []) {
184
+ export function create_field_proxy(target, get_input, depend, set_input, get_issues, path = []) {
185
+ const path_string = build_path_string(path);
186
+
187
+ const get_value = () => {
188
+ depend(path_string);
189
+ return untrack(() => deep_get(get_input(), path));
190
+ };
191
+
183
192
  return new Proxy(target, {
184
193
  get(target, prop) {
185
194
  if (typeof prop === 'symbol') return target[prop];
186
195
 
187
196
  // Handle array access like jobs[0]
188
197
  if (/^\d+$/.test(prop)) {
189
- return create_field_proxy({}, get_input, set_input, get_issues, [
198
+ return create_field_proxy({}, get_input, depend, set_input, get_issues, [
190
199
  ...path,
191
200
  parseInt(prop, 10)
192
201
  ]);
@@ -199,18 +208,17 @@ export function create_field_proxy(target, get_input, set_input, get_issues, pat
199
208
  set_input(path, newValue);
200
209
  return newValue;
201
210
  };
202
- return create_field_proxy(set_func, get_input, set_input, get_issues, [...path, prop]);
211
+ return create_field_proxy(set_func, get_input, depend, set_input, get_issues, [
212
+ ...path,
213
+ prop
214
+ ]);
203
215
  }
204
216
 
205
217
  if (prop === 'value') {
206
- const value_func = function () {
207
- // TODO Ideally we'd create a $derived just above and use it here but we can't because of push_reaction which prevents
208
- // changes to deriveds created within an effect to rerun the effect - an argument for
209
- // reverting that change in async mode?
210
- // TODO we did that in Svelte now; bump Svelte version and use $derived here
211
- return deep_get(get_input(), path);
212
- };
213
- return create_field_proxy(value_func, get_input, set_input, get_issues, [...path, prop]);
218
+ return create_field_proxy(get_value, get_input, depend, set_input, get_issues, [
219
+ ...path,
220
+ prop
221
+ ]);
214
222
  }
215
223
 
216
224
  if (prop === 'issues' || prop === 'allIssues') {
@@ -230,7 +238,10 @@ export function create_field_proxy(target, get_input, set_input, get_issues, pat
230
238
  }));
231
239
  };
232
240
 
233
- return create_field_proxy(issues_func, get_input, set_input, get_issues, [...path, prop]);
241
+ return create_field_proxy(issues_func, get_input, depend, set_input, get_issues, [
242
+ ...path,
243
+ prop
244
+ ]);
234
245
  }
235
246
 
236
247
  if (prop === 'as') {
@@ -266,6 +277,19 @@ export function create_field_proxy(target, get_input, set_input, get_issues, pat
266
277
  base_props.type = type === 'file multiple' ? 'file' : type;
267
278
  }
268
279
 
280
+ // Handle submit and hidden inputs
281
+ if (type === 'submit' || type === 'hidden') {
282
+ if (DEV) {
283
+ if (!input_value) {
284
+ throw new Error(`\`${type}\` inputs must have a value`);
285
+ }
286
+ }
287
+
288
+ return Object.defineProperties(base_props, {
289
+ value: { value: input_value, enumerable: true }
290
+ });
291
+ }
292
+
269
293
  // Handle select inputs
270
294
  if (type === 'select' || type === 'select multiple') {
271
295
  return Object.defineProperties(base_props, {
@@ -273,8 +297,7 @@ export function create_field_proxy(target, get_input, set_input, get_issues, pat
273
297
  value: {
274
298
  enumerable: true,
275
299
  get() {
276
- const input = get_input();
277
- return deep_get(input, path);
300
+ return get_value();
278
301
  }
279
302
  }
280
303
  });
@@ -297,8 +320,7 @@ export function create_field_proxy(target, get_input, set_input, get_issues, pat
297
320
  checked: {
298
321
  enumerable: true,
299
322
  get() {
300
- const input = get_input();
301
- const value = deep_get(input, path);
323
+ const value = get_value();
302
324
 
303
325
  if (type === 'radio') {
304
326
  return value === input_value;
@@ -321,8 +343,7 @@ export function create_field_proxy(target, get_input, set_input, get_issues, pat
321
343
  files: {
322
344
  enumerable: true,
323
345
  get() {
324
- const input = get_input();
325
- const value = deep_get(input, path);
346
+ const value = get_value();
326
347
 
327
348
  // Convert File/File[] to FileList-like object
328
349
  if (value instanceof File) {
@@ -362,20 +383,21 @@ export function create_field_proxy(target, get_input, set_input, get_issues, pat
362
383
  value: {
363
384
  enumerable: true,
364
385
  get() {
365
- const input = get_input();
366
- const value = deep_get(input, path);
367
-
386
+ const value = get_value();
368
387
  return value != null ? String(value) : '';
369
388
  }
370
389
  }
371
390
  });
372
391
  };
373
392
 
374
- return create_field_proxy(as_func, get_input, set_input, get_issues, [...path, 'as']);
393
+ return create_field_proxy(as_func, get_input, depend, set_input, get_issues, [
394
+ ...path,
395
+ 'as'
396
+ ]);
375
397
  }
376
398
 
377
399
  // Handle property access (nested fields)
378
- return create_field_proxy({}, get_input, set_input, get_issues, [...path, prop]);
400
+ return create_field_proxy({}, get_input, depend, set_input, get_issues, [...path, prop]);
379
401
  }
380
402
  });
381
403
  }
@@ -385,7 +407,7 @@ export function create_field_proxy(target, get_input, set_input, get_issues, pat
385
407
  * @param {(string | number)[]} path
386
408
  * @returns {string}
387
409
  */
388
- function build_path_string(path) {
410
+ export function build_path_string(path) {
389
411
  let result = '';
390
412
 
391
413
  for (const segment of path) {
package/src/version.js CHANGED
@@ -1,4 +1,4 @@
1
1
  // generated during release, do not modify
2
2
 
3
3
  /** @type {string} */
4
- export const VERSION = '2.46.0';
4
+ export const VERSION = '2.46.2';
package/types/index.d.ts CHANGED
@@ -1826,19 +1826,23 @@ declare module '@sveltejs/kit' {
1826
1826
  // Input element properties based on type
1827
1827
  type InputElementProps<T extends keyof InputTypeMap> = T extends 'checkbox' | 'radio'
1828
1828
  ? {
1829
+ name: string;
1829
1830
  type: T;
1831
+ value?: string;
1830
1832
  'aria-invalid': boolean | 'false' | 'true' | undefined;
1831
1833
  get checked(): boolean;
1832
1834
  set checked(value: boolean);
1833
1835
  }
1834
1836
  : T extends 'file'
1835
1837
  ? {
1838
+ name: string;
1836
1839
  type: 'file';
1837
1840
  'aria-invalid': boolean | 'false' | 'true' | undefined;
1838
1841
  get files(): FileList | null;
1839
1842
  set files(v: FileList | null);
1840
1843
  }
1841
1844
  : {
1845
+ name: string;
1842
1846
  type: T;
1843
1847
  'aria-invalid': boolean | 'false' | 'true' | undefined;
1844
1848
  get value(): string | number;
@@ -1858,10 +1862,10 @@ declare module '@sveltejs/kit' {
1858
1862
 
1859
1863
  type AsArgs<Type extends keyof InputTypeMap, Value> = Type extends 'checkbox'
1860
1864
  ? Value extends string[]
1861
- ? [type: 'checkbox', value: Value[number] | (string & {})]
1865
+ ? [type: Type, value: Value[number] | (string & {})]
1862
1866
  : [type: Type]
1863
- : Type extends 'radio'
1864
- ? [type: 'radio', value: Value | (string & {})]
1867
+ : Type extends 'radio' | 'submit' | 'hidden'
1868
+ ? [type: Type, value: Value | (string & {})]
1865
1869
  : [type: Type];
1866
1870
 
1867
1871
  /**
@@ -1947,19 +1951,6 @@ declare module '@sveltejs/kit' {
1947
1951
  * If an issue is a `string`, it applies to the form as a whole (and will show up in `fields.allIssues()`)
1948
1952
  * Access properties to create field-specific issues: `invalid.fieldName('message')`.
1949
1953
  * The type structure mirrors the input data structure for type-safe field access.
1950
- *
1951
- * @example
1952
- * ```ts
1953
- * invalid('Username or password is invalid');
1954
- * ```
1955
- *
1956
- * @example
1957
- * ```ts
1958
- * invalid(
1959
- * invalid.username('Username is taken'),
1960
- * invalid.items[0].qty('Insufficient stock')
1961
- * );
1962
- * ```
1963
1954
  */
1964
1955
  export type Invalid<Input = any> = ((...issues: Array<string | StandardSchemaV1.Issue>) => never) &
1965
1956
  InvalidField<Input>;
@@ -211,6 +211,6 @@
211
211
  null,
212
212
  null
213
213
  ],
214
- "mappings": "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",
214
+ "mappings": "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",
215
215
  "ignoreList": []
216
216
  }