@@ -11,7 +11,9 @@ export type ProxyOptions = {
1111 taint ?: TaintOption ;
1212} ;
1313
14- type CorrectProxyType < In , Out , T extends Record < string , unknown > , Path extends FormPath < T > > =
14+ type FormPaths < T extends Record < string , unknown > > = FormPath < T > | FormPathLeaves < T > ;
15+
16+ type CorrectProxyType < In , Out , T extends Record < string , unknown > , Path extends FormPaths < T > > =
1517 NonNullable < FormPathType < T , Path > > extends In ? Writable < Out > : never ;
1618
1719type DefaultOptions = {
@@ -40,7 +42,7 @@ const defaultOptions = {
4042
4143///// Proxy functions ///////////////////////////////////////////////
4244
43- export function booleanProxy < T extends Record < string , unknown > , Path extends FormPath < T > > (
45+ export function booleanProxy < T extends Record < string , unknown > , Path extends FormPaths < T > > (
4446 form : Writable < T > | SuperForm < T , unknown > ,
4547 path : Path ,
4648 options ?: Prettify < Pick < DefaultOptions , 'trueStringValue' | 'taint' > >
@@ -51,7 +53,7 @@ export function booleanProxy<T extends Record<string, unknown>, Path extends For
5153 } ) as CorrectProxyType < boolean , string , T , Path > ;
5254}
5355
54- export function intProxy < T extends Record < string , unknown > , Path extends FormPath < T > > (
56+ export function intProxy < T extends Record < string , unknown > , Path extends FormPaths < T > > (
5557 form : Writable < T > | SuperForm < T , unknown > ,
5658 path : Path ,
5759 options ?: Prettify < Pick < DefaultOptions , 'empty' | 'initiallyEmptyIfZero' | 'taint' > >
@@ -62,7 +64,7 @@ export function intProxy<T extends Record<string, unknown>, Path extends FormPat
6264 } ) as CorrectProxyType < number , string , T , Path > ;
6365}
6466
65- export function numberProxy < T extends Record < string , unknown > , Path extends FormPath < T > > (
67+ export function numberProxy < T extends Record < string , unknown > , Path extends FormPaths < T > > (
6668 form : Writable < T > | SuperForm < T , unknown > ,
6769 path : Path ,
6870 options ?: Prettify < Pick < DefaultOptions , 'empty' | 'delimiter' | 'initiallyEmptyIfZero' | 'taint' > >
@@ -73,7 +75,7 @@ export function numberProxy<T extends Record<string, unknown>, Path extends Form
7375 } ) as CorrectProxyType < number , string , T , Path > ;
7476}
7577
76- export function dateProxy < T extends Record < string , unknown > , Path extends FormPath < T > > (
78+ export function dateProxy < T extends Record < string , unknown > , Path extends FormPaths < T > > (
7779 form : Writable < T > | SuperForm < T , unknown > ,
7880 path : Path ,
7981 options ?: {
@@ -111,7 +113,7 @@ export function stringProxy<T extends Record<string, unknown>, Path extends Form
111113 * @param field Form field
112114 * @param type 'number' | 'int' | 'boolean'
113115 */
114- function _stringProxy < T extends Record < string , unknown > , Path extends FormPath < T > > (
116+ function _stringProxy < T extends Record < string , unknown > , Path extends FormPaths < T > > (
115117 form : Writable < T > | SuperForm < T , unknown > ,
116118 path : Path ,
117119 type : 'number' | 'int' | 'boolean' | 'date' | 'string' ,
@@ -460,7 +462,7 @@ function isSuperForm<T extends Record<string, unknown>>(
460462
461463export type FieldProxy < T > = Writable < T > ;
462464
463- export function fieldProxy < T extends Record < string , unknown > , Path extends FormPath < T > > (
465+ export function fieldProxy < T extends Record < string , unknown > , Path extends FormPaths < T > > (
464466 form : Writable < T > | SuperForm < T , unknown > ,
465467 path : Path ,
466468 options ?: ProxyOptions
0 commit comments