@pyreon/form 0.3.0 → 0.7.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/lib/analysis/index.js.html +1 -1
- package/lib/index.js +151 -152
- package/lib/index.js.map +1 -1
- package/lib/types/devtools.d.ts +22 -58
- package/lib/types/devtools.d.ts.map +1 -1
- package/lib/types/index.d.ts +275 -441
- package/lib/types/index.d.ts.map +1 -1
- package/package.json +3 -3
- package/src/context.ts +3 -12
- package/src/index.ts +9 -13
- package/src/tests/devtools.test.ts +4 -4
- package/src/tests/{form.test.ts → form.test.tsx} +45 -36
- package/src/types.ts +1 -1
- package/src/use-field-array.ts +2 -2
- package/src/use-field.ts +2 -2
- package/src/use-form-state.ts +1 -1
- package/src/use-form.ts +1 -1
- package/src/use-watch.ts +1 -1
- package/lib/types/devtools2.d.ts +0 -31
- package/lib/types/devtools2.d.ts.map +0 -1
- package/lib/types/index2.d.ts +0 -291
- package/lib/types/index2.d.ts.map +0 -1
package/lib/types/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","names":[],"sources":["../../src/use-form.ts","../../src/use-field-array.ts","../../src/use-field.ts","../../src/use-watch.ts","../../src/use-form-state.ts","../../src/context.ts"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index2.d.ts","names":[],"sources":["../../../src/types.ts","../../../src/context.ts","../../../src/use-field.ts","../../../src/use-field-array.ts","../../../src/use-form.ts","../../../src/use-form-state.ts","../../../src/use-watch.ts"],"mappings":";;;;KAEY,eAAA;;;AAAZ;;KAMY,QAAA,MAAc,MAAA,CAAO,CAAA,IAAK,QAAA,CAAS,CAAA;;;AAA/C;;KAMY,UAAA,cAAwB,MAAA,sBAClC,KAAA,EAAO,CAAA,EACP,SAAA,EAAW,OAAA,KACR,eAAA,GAAkB,OAAA,CAAQ,eAAA;AAAA,KAEnB,gBAAA,aACV,MAAA,EAAQ,OAAA,KAEN,OAAA,CAAQ,MAAA,OAAa,OAAA,EAAS,eAAA,KAC9B,OAAA,CAAQ,OAAA,CAAQ,MAAA,OAAa,OAAA,EAAS,eAAA;AAAA,UAEzB,UAAA;EAjB8B;EAmB7C,KAAA,EAAO,MAAA,CAAO,CAAA;EAnB8B;EAqB5C,KAAA,EAAO,MAAA,CAAO,eAAA;EArBK;EAuBnB,OAAA,EAAS,MAAA;EAvBsB;EAyB/B,KAAA,EAAO,MAAA;EAzBsC;EA2B7C,QAAA,GAAW,KAAA,EAAO,CAAA;EA3B4B;EA6B9C,UAAA;EAvBoB;EAyBpB,KAAA;AAAA;;UAIe,kBAAA;EACf,KAAA,EAAO,MAAA,CAAO,CAAA;EACd,OAAA,GAAU,CAAA,EAAG,KAAA;EACb,MAAA;EACA,OAAA,GAAU,QAAA;AAAA;AAAA,UAGK,SAAA,iBAA0B,MAAA;EApCjB;EAsCxB,MAAA,gBAAsB,OAAA,GAAU,UAAA,CAAW,OAAA,CAAQ,CAAA;EApCxC;EAsCX,YAAA,EAAc,MAAA;EArCX;EAuCH,YAAA,EAAc,MAAA;EAvCe;EAyC7B,OAAA,EAAS,QAAA;EAzCmC;EA2C5C,OAAA,EAAS,QAAA;EAzCiB;EA2C1B,WAAA,EAAa,MAAA;EA1CL;EA4CR,WAAA,EAAa,MAAA;EA1CmB;EA4ChC,MAAA,QAAc,OAAA;EA5CZ;EA8CF,MAAA,QAAc,OAAA,CAAQ,MAAA,OAAa,OAAA,EAAS,eAAA;EA7CJ;EA+CxC,aAAA,mBAAgC,OAAA,EAAS,KAAA,EAAO,CAAA,EAAG,KAAA,EAAO,OAAA,CAAQ,CAAA;EA/CxD;EAiDV,aAAA,GAAgB,KAAA,QAAa,OAAA,EAAS,KAAA,EAAO,eAAA;EAjDpC;EAmDT,SAAA,GAAY,MAAA,EAAQ,OAAA,CAAQ,MAAA,OAAa,OAAA,EAAS,eAAA;EAvDvB;EAyD3B,WAAA;EAxDA;EA0DA,UAAA,GAAa,KAAA,QAAa,OAAA;EAxDhB;;;;;;EA+DV,QAAA,mBAA2B,OAAA,WACzB,KAAA,EAAO,CAAA,EACP,OAAA;IAAY,IAAA;EAAA,MACT,kBAAA,CAAmB,OAAA,CAAQ,CAAA;EAjEuB;AAEzD;;;EAoEE,YAAA,GAAe,CAAA,GAAI,KAAA,KAAU,OAAA;EAlEtB;EAoEP,KAAA;EAlEO;EAoEP,QAAA,QAAgB,OAAA;AAAA;AAAA,UAGD,cAAA,iBAA+B,MAAA;EAjE3B;EAmEnB,aAAA,EAAe,OAAA;EA7EW;EA+E1B,QAAA,GAAW,MAAA,EAAQ,OAAA,YAAmB,OAAA;EA7E/B;EA+EP,UAAA,GAAa,OAAA,eACC,OAAA,GAAU,UAAA,CAAW,OAAA,CAAQ,CAAA,GAAI,OAAA;EA9EjC;EAiFd,MAAA,GAAS,gBAAA,CAAiB,OAAA;EA/EjB;EAiFT,UAAA;EA/EO;EAiFP,UAAA;AAAA;;;UC1Ge,iBAAA,iBAAkC,MAAA,2BACzC,KAAA;EACR,IAAA,EAAM,SAAA,CAAU,OAAA;EAChB,QAAA,GAAW,UAAA;AAAA;;;;ADHb;;;;;;;;;iBCkBgB,YAAA,iBAA6B,MAAA,kBAAA,CAC3C,KAAA,EAAO,iBAAA,CAAkB,OAAA,IACxB,KAAA;;;;;;;ADdH;;;;iBC+BgB,cAAA,iBACE,MAAA,oBAA0B,MAAA,kBAAA,CAAA,GACvC,SAAA,CAAU,OAAA;;;UCtCE,cAAA;;EAEf,KAAA,EAAO,MAAA,CAAO,CAAA;EFTW;EEWzB,KAAA,EAAO,MAAA,CAAO,eAAA;EFXW;EEazB,OAAA,EAAS,MAAA;EFPC;EESV,KAAA,EAAO,MAAA;EFTW;EEWlB,QAAA,GAAW,KAAA,EAAO,CAAA;EFXM;EEaxB,UAAA;EFboC;EEepC,KAAA;EFf4C;EEiB5C,QAAA,GAAW,IAAA;IAAS,IAAA;EAAA,MAAwB,kBAAA,CAAmB,CAAA;EFjB3B;EEmBpC,QAAA,EAAU,QAAA;EFnBoC;EEqB9C,SAAA,EAAW,QAAA;AAAA;;;;;;;;;;;;;;;;iBAkBG,QAAA,iBACE,MAAA,mCACA,OAAA,UAAA,CAChB,IAAA,EAAM,SAAA,CAAU,OAAA,GAAU,IAAA,EAAM,CAAA,GAAI,cAAA,CAAe,OAAA,CAAQ,CAAA;;;UC/C5C,cAAA;;EAEf,GAAA;EHHU;EGKV,KAAA,EAAO,MAAA,CAAO,CAAA;AAAA;AAAA,UAGC,mBAAA;EHRU;EGUzB,KAAA,EAAO,MAAA,CAAO,cAAA,CAAe,CAAA;EHJX;EGMlB,MAAA,EAAQ,QAAA;EHNuB;EGQ/B,MAAA,GAAS,KAAA,EAAO,CAAA;EHR6B;EGU7C,OAAA,GAAU,KAAA,EAAO,CAAA;EHV2B;EGY5C,MAAA,GAAS,KAAA,UAAe,KAAA,EAAO,CAAA;EHZZ;EGcnB,MAAA,GAAS,KAAA;EHdsB;EGgB/B,MAAA,GAAS,KAAA,UAAe,KAAA,EAAO,CAAA;EHhBc;EGkB7C,IAAA,GAAO,IAAA,UAAc,EAAA;EHlByB;EGoB9C,IAAA,GAAO,MAAA,UAAgB,MAAA;EHdH;EGgBpB,OAAA,GAAU,MAAA,EAAQ,CAAA;EHhBgB;EGkBlC,MAAA,QAAc,CAAA;AAAA;;;;;;;;;;iBAYA,aAAA,GAAA,CAAiB,OAAA,GAAS,CAAA,KAAW,mBAAA,CAAoB,CAAA;;;;;;AH1CzE;;;;;AAMA;;;;;;;;;;iBIqBgB,OAAA,iBAAwB,MAAA,kBAAA,CACtC,OAAA,EAAS,cAAA,CAAe,OAAA,IACvB,SAAA,CAAU,OAAA;;;UC3BI,gBAAA,iBAAiC,MAAA;EAChD,YAAA;EACA,YAAA;EACA,OAAA;EACA,OAAA;EACA,WAAA;EACA,WAAA;EACA,aAAA,EAAe,OAAA,CAAQ,MAAA,OAAa,OAAA;EACpC,WAAA,EAAa,OAAA,CAAQ,MAAA,OAAa,OAAA;EAClC,MAAA,EAAQ,OAAA,CAAQ,MAAA,OAAa,OAAA,EAAS,eAAA;AAAA;;;;;;;;;;;;;ALCxC;iBKegB,YAAA,iBAA6B,MAAA,kBAAA,CAC3C,IAAA,EAAM,SAAA,CAAU,OAAA,IACf,QAAA,CAAS,gBAAA,CAAiB,OAAA;AAAA,iBAEb,YAAA,iBAA6B,MAAA,qBAAA,CAC3C,IAAA,EAAM,SAAA,CAAU,OAAA,GAChB,QAAA,GAAW,KAAA,EAAO,gBAAA,CAAiB,OAAA,MAAa,CAAA,GAC/C,QAAA,CAAS,CAAA;;;;;ALlCZ;;;;;AAMA;;;;;;;;;;;;iBMegB,QAAA,iBACE,MAAA,mCACA,OAAA,UAAA,CAChB,IAAA,EAAM,SAAA,CAAU,OAAA,GAAU,IAAA,EAAM,CAAA,GAAI,MAAA,CAAO,OAAA,CAAQ,CAAA;AAAA,iBAErC,QAAA,iBACE,MAAA,oCACC,OAAA,aAAA,CAEjB,IAAA,EAAM,SAAA,CAAU,OAAA,GAChB,KAAA,EAAO,CAAA,iBACQ,CAAA,GAAI,MAAA,CAAO,OAAA,CAAQ,CAAA,CAAE,CAAA,UAAW,OAAA;AAAA,iBAEjC,QAAA,iBAAyB,MAAA,kBAAA,CACvC,IAAA,EAAM,SAAA,CAAU,OAAA,IACf,QAAA,CAAS,OAAA"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pyreon/form",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.7.0",
|
|
4
4
|
"description": "Signal-based form management for Pyreon",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|
|
@@ -45,7 +45,7 @@
|
|
|
45
45
|
"typecheck": "tsc --noEmit"
|
|
46
46
|
},
|
|
47
47
|
"peerDependencies": {
|
|
48
|
-
"@pyreon/core": ">=0.
|
|
49
|
-
"@pyreon/reactivity": ">=0.
|
|
48
|
+
"@pyreon/core": ">=0.5.0 <1.0.0",
|
|
49
|
+
"@pyreon/reactivity": ">=0.5.0 <1.0.0"
|
|
50
50
|
}
|
|
51
51
|
}
|
package/src/context.ts
CHANGED
|
@@ -1,11 +1,5 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
pushContext,
|
|
4
|
-
popContext,
|
|
5
|
-
onUnmount,
|
|
6
|
-
useContext,
|
|
7
|
-
} from '@pyreon/core'
|
|
8
|
-
import type { VNodeChild, VNode, Props } from '@pyreon/core'
|
|
1
|
+
import type { Props, VNode, VNodeChild } from '@pyreon/core'
|
|
2
|
+
import { createContext, provide, useContext } from '@pyreon/core'
|
|
9
3
|
import type { FormState } from './types'
|
|
10
4
|
|
|
11
5
|
const FormContext = createContext<FormState<Record<string, unknown>> | null>(
|
|
@@ -33,10 +27,7 @@ export interface FormProviderProps<TValues extends Record<string, unknown>>
|
|
|
33
27
|
export function FormProvider<TValues extends Record<string, unknown>>(
|
|
34
28
|
props: FormProviderProps<TValues>,
|
|
35
29
|
): VNode {
|
|
36
|
-
|
|
37
|
-
pushContext(frame)
|
|
38
|
-
|
|
39
|
-
onUnmount(() => popContext())
|
|
30
|
+
provide(FormContext, props.form as FormState<Record<string, unknown>>)
|
|
40
31
|
|
|
41
32
|
const ch = props.children
|
|
42
33
|
return (typeof ch === 'function' ? (ch as () => VNodeChild)() : ch) as VNode
|
package/src/index.ts
CHANGED
|
@@ -1,26 +1,22 @@
|
|
|
1
|
-
export { useForm } from './use-form'
|
|
2
|
-
export { useFieldArray } from './use-field-array'
|
|
3
|
-
export { useField } from './use-field'
|
|
4
|
-
export { useWatch } from './use-watch'
|
|
5
|
-
export { useFormState } from './use-form-state'
|
|
6
1
|
export { FormProvider, useFormContext } from './context'
|
|
7
|
-
|
|
8
2
|
export type {
|
|
9
3
|
Accessor,
|
|
10
|
-
FieldState,
|
|
11
4
|
FieldRegisterProps,
|
|
5
|
+
FieldState,
|
|
12
6
|
FormState,
|
|
7
|
+
SchemaValidateFn,
|
|
13
8
|
UseFormOptions,
|
|
14
|
-
ValidationError,
|
|
15
9
|
ValidateFn,
|
|
16
|
-
|
|
10
|
+
ValidationError,
|
|
17
11
|
} from './types'
|
|
18
|
-
|
|
12
|
+
export type { UseFieldResult } from './use-field'
|
|
13
|
+
export { useField } from './use-field'
|
|
19
14
|
export type {
|
|
20
15
|
FieldArrayItem,
|
|
21
16
|
UseFieldArrayResult,
|
|
22
17
|
} from './use-field-array'
|
|
23
|
-
|
|
24
|
-
export
|
|
25
|
-
|
|
18
|
+
export { useFieldArray } from './use-field-array'
|
|
19
|
+
export { useForm } from './use-form'
|
|
26
20
|
export type { FormStateSummary } from './use-form-state'
|
|
21
|
+
export { useFormState } from './use-form-state'
|
|
22
|
+
export { useWatch } from './use-watch'
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { computed, signal } from '@pyreon/reactivity'
|
|
2
2
|
import {
|
|
3
|
-
|
|
4
|
-
unregisterForm,
|
|
3
|
+
_resetDevtools,
|
|
5
4
|
getActiveForms,
|
|
6
5
|
getFormInstance,
|
|
7
6
|
getFormSnapshot,
|
|
8
7
|
onFormChange,
|
|
9
|
-
|
|
8
|
+
registerForm,
|
|
9
|
+
unregisterForm,
|
|
10
10
|
} from '../devtools'
|
|
11
11
|
|
|
12
12
|
// Minimal form-like object for testing (avoids needing the full useForm + DOM)
|
|
@@ -1,27 +1,32 @@
|
|
|
1
|
-
import { h } from '@pyreon/core'
|
|
2
1
|
import { mount } from '@pyreon/runtime-dom'
|
|
2
|
+
import type { FormState } from '../index'
|
|
3
3
|
import {
|
|
4
|
-
useForm,
|
|
5
|
-
useFieldArray,
|
|
6
|
-
useField,
|
|
7
|
-
useWatch,
|
|
8
|
-
useFormState,
|
|
9
4
|
FormProvider,
|
|
5
|
+
useField,
|
|
6
|
+
useFieldArray,
|
|
7
|
+
useForm,
|
|
10
8
|
useFormContext,
|
|
9
|
+
useFormState,
|
|
10
|
+
useWatch,
|
|
11
11
|
} from '../index'
|
|
12
|
-
import type { FormState } from '../index'
|
|
13
12
|
|
|
14
13
|
// ─── Helpers ──────────────────────────────────────────────────────────────────
|
|
15
14
|
|
|
15
|
+
function Capture<T>({ fn }: { fn: () => T }) {
|
|
16
|
+
fn()
|
|
17
|
+
return null
|
|
18
|
+
}
|
|
19
|
+
|
|
16
20
|
function mountWith<T>(fn: () => T): { result: T; unmount: () => void } {
|
|
17
21
|
let result: T | undefined
|
|
18
22
|
const el = document.createElement('div')
|
|
19
23
|
document.body.appendChild(el)
|
|
20
24
|
const unmount = mount(
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
+
<Capture
|
|
26
|
+
fn={() => {
|
|
27
|
+
result = fn()
|
|
28
|
+
}}
|
|
29
|
+
/>,
|
|
25
30
|
el,
|
|
26
31
|
)
|
|
27
32
|
return {
|
|
@@ -1810,23 +1815,26 @@ describe('FormProvider / useFormContext', () => {
|
|
|
1810
1815
|
const el = document.createElement('div')
|
|
1811
1816
|
document.body.appendChild(el)
|
|
1812
1817
|
|
|
1813
|
-
|
|
1814
|
-
|
|
1815
|
-
|
|
1816
|
-
|
|
1817
|
-
|
|
1818
|
-
|
|
1819
|
-
|
|
1820
|
-
}
|
|
1821
|
-
|
|
1822
|
-
|
|
1823
|
-
|
|
1824
|
-
|
|
1825
|
-
|
|
1826
|
-
|
|
1827
|
-
|
|
1828
|
-
|
|
1829
|
-
|
|
1818
|
+
function ContextConsumer() {
|
|
1819
|
+
contextForm = useFormContext() as FormState<{ email: string }>
|
|
1820
|
+
return null
|
|
1821
|
+
}
|
|
1822
|
+
|
|
1823
|
+
function ContextTest() {
|
|
1824
|
+
const form = useForm({
|
|
1825
|
+
initialValues: { email: 'context@test.com' },
|
|
1826
|
+
onSubmit: () => {
|
|
1827
|
+
/* noop */
|
|
1828
|
+
},
|
|
1829
|
+
})
|
|
1830
|
+
return (
|
|
1831
|
+
<FormProvider form={form as any}>
|
|
1832
|
+
{() => <ContextConsumer />}
|
|
1833
|
+
</FormProvider>
|
|
1834
|
+
)
|
|
1835
|
+
}
|
|
1836
|
+
|
|
1837
|
+
const unmount = mount(<ContextTest />, el)
|
|
1830
1838
|
|
|
1831
1839
|
expect(contextForm).toBeDefined()
|
|
1832
1840
|
expect(contextForm!.fields.email.value()).toBe('context@test.com')
|
|
@@ -1840,14 +1848,15 @@ describe('FormProvider / useFormContext', () => {
|
|
|
1840
1848
|
|
|
1841
1849
|
let error: Error | undefined
|
|
1842
1850
|
const unmount = mount(
|
|
1843
|
-
|
|
1844
|
-
|
|
1845
|
-
|
|
1846
|
-
|
|
1847
|
-
|
|
1848
|
-
|
|
1849
|
-
|
|
1850
|
-
|
|
1851
|
+
<Capture
|
|
1852
|
+
fn={() => {
|
|
1853
|
+
try {
|
|
1854
|
+
useFormContext()
|
|
1855
|
+
} catch (e) {
|
|
1856
|
+
error = e as Error
|
|
1857
|
+
}
|
|
1858
|
+
}}
|
|
1859
|
+
/>,
|
|
1851
1860
|
el,
|
|
1852
1861
|
)
|
|
1853
1862
|
|
package/src/types.ts
CHANGED
package/src/use-field-array.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import
|
|
1
|
+
import type { Computed, Signal } from '@pyreon/reactivity'
|
|
2
|
+
import { computed, signal } from '@pyreon/reactivity'
|
|
3
3
|
|
|
4
4
|
export interface FieldArrayItem<T> {
|
|
5
5
|
/** Stable key for keyed rendering. */
|
package/src/use-field.ts
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
|
+
import type { Computed, Signal } from '@pyreon/reactivity'
|
|
1
2
|
import { computed } from '@pyreon/reactivity'
|
|
2
|
-
import type { Signal, Computed } from '@pyreon/reactivity'
|
|
3
3
|
import type {
|
|
4
|
+
FieldRegisterProps,
|
|
4
5
|
FieldState,
|
|
5
6
|
FormState,
|
|
6
7
|
ValidationError,
|
|
7
|
-
FieldRegisterProps,
|
|
8
8
|
} from './types'
|
|
9
9
|
|
|
10
10
|
export interface UseFieldResult<T> {
|
package/src/use-form-state.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { computed } from '@pyreon/reactivity'
|
|
2
1
|
import type { Computed } from '@pyreon/reactivity'
|
|
2
|
+
import { computed } from '@pyreon/reactivity'
|
|
3
3
|
import type { FormState, ValidationError } from './types'
|
|
4
4
|
|
|
5
5
|
export interface FormStateSummary<TValues extends Record<string, unknown>> {
|
package/src/use-form.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { onUnmount } from '@pyreon/core'
|
|
2
|
-
import { signal, computed, effect } from '@pyreon/reactivity'
|
|
3
2
|
import type { Signal } from '@pyreon/reactivity'
|
|
3
|
+
import { computed, effect, signal } from '@pyreon/reactivity'
|
|
4
4
|
import type {
|
|
5
5
|
FieldRegisterProps,
|
|
6
6
|
FieldState,
|
package/src/use-watch.ts
CHANGED
package/lib/types/devtools2.d.ts
DELETED
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
//#region src/devtools.d.ts
|
|
2
|
-
/**
|
|
3
|
-
* @pyreon/form devtools introspection API.
|
|
4
|
-
* Import: `import { ... } from "@pyreon/form/devtools"`
|
|
5
|
-
*/
|
|
6
|
-
/**
|
|
7
|
-
* Register a form instance for devtools inspection.
|
|
8
|
-
*
|
|
9
|
-
* @example
|
|
10
|
-
* const form = useForm({ ... })
|
|
11
|
-
* registerForm("login-form", form)
|
|
12
|
-
*/
|
|
13
|
-
declare function registerForm(name: string, form: object): void;
|
|
14
|
-
/** Unregister a form instance. */
|
|
15
|
-
declare function unregisterForm(name: string): void;
|
|
16
|
-
/** Get all registered form names. Cleans up garbage-collected instances. */
|
|
17
|
-
declare function getActiveForms(): string[];
|
|
18
|
-
/** Get a form instance by name (or undefined if GC'd or not registered). */
|
|
19
|
-
declare function getFormInstance(name: string): object | undefined;
|
|
20
|
-
/**
|
|
21
|
-
* Get a snapshot of a registered form's current state.
|
|
22
|
-
* Returns values, errors, and form-level status signals.
|
|
23
|
-
*/
|
|
24
|
-
declare function getFormSnapshot(name: string): Record<string, unknown> | undefined;
|
|
25
|
-
/** Subscribe to form registry changes. Returns unsubscribe function. */
|
|
26
|
-
declare function onFormChange(listener: () => void): () => void;
|
|
27
|
-
/** @internal — reset devtools registry (for tests). */
|
|
28
|
-
declare function _resetDevtools(): void;
|
|
29
|
-
//#endregion
|
|
30
|
-
export { _resetDevtools, getActiveForms, getFormInstance, getFormSnapshot, onFormChange, registerForm, unregisterForm };
|
|
31
|
-
//# sourceMappingURL=devtools2.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"devtools2.d.ts","names":[],"sources":["../../src/devtools.ts"],"mappings":";;AAmBA;;;;;AAMA;;;;;iBANgB,YAAA,CAAa,IAAA,UAAc,IAAA;;iBAM3B,cAAA,CAAe,IAAA;;iBAMf,cAAA,CAAA;AAQhB;AAAA,iBAAgB,eAAA,CAAgB,IAAA;;;;AAehC;iBAAgB,eAAA,CACd,IAAA,WACC,MAAA;;iBAgCa,YAAA,CAAa,QAAA;;iBAQb,cAAA,CAAA"}
|
package/lib/types/index2.d.ts
DELETED
|
@@ -1,291 +0,0 @@
|
|
|
1
|
-
import { Props, VNode, VNodeChild } from "@pyreon/core";
|
|
2
|
-
import { Computed, Signal } from "@pyreon/reactivity";
|
|
3
|
-
|
|
4
|
-
//#region src/types.d.ts
|
|
5
|
-
type ValidationError = string | undefined;
|
|
6
|
-
/**
|
|
7
|
-
* A reactive value that can be read by calling it.
|
|
8
|
-
* Both `Signal<T>` and `Computed<T>` satisfy this interface.
|
|
9
|
-
*/
|
|
10
|
-
type Accessor<T> = Signal<T> | Computed<T>;
|
|
11
|
-
/**
|
|
12
|
-
* Field validator function. Receives the field value and all current form values
|
|
13
|
-
* for cross-field validation.
|
|
14
|
-
*/
|
|
15
|
-
type ValidateFn<T, TValues = Record<string, unknown>> = (value: T, allValues: TValues) => ValidationError | Promise<ValidationError>;
|
|
16
|
-
type SchemaValidateFn<TValues> = (values: TValues) => Partial<Record<keyof TValues, ValidationError>> | Promise<Partial<Record<keyof TValues, ValidationError>>>;
|
|
17
|
-
interface FieldState<T = unknown> {
|
|
18
|
-
/** Current field value. */
|
|
19
|
-
value: Signal<T>;
|
|
20
|
-
/** Field error message (undefined if no error). */
|
|
21
|
-
error: Signal<ValidationError>;
|
|
22
|
-
/** Whether the field has been blurred at least once. */
|
|
23
|
-
touched: Signal<boolean>;
|
|
24
|
-
/** Whether the field value differs from its initial value. */
|
|
25
|
-
dirty: Signal<boolean>;
|
|
26
|
-
/** Set the field value. */
|
|
27
|
-
setValue: (value: T) => void;
|
|
28
|
-
/** Mark the field as touched (typically on blur). */
|
|
29
|
-
setTouched: () => void;
|
|
30
|
-
/** Reset the field to its initial value and clear error/touched/dirty. */
|
|
31
|
-
reset: () => void;
|
|
32
|
-
}
|
|
33
|
-
/** Props returned by `register()` for binding an input element. */
|
|
34
|
-
interface FieldRegisterProps<T> {
|
|
35
|
-
value: Signal<T>;
|
|
36
|
-
onInput: (e: Event) => void;
|
|
37
|
-
onBlur: () => void;
|
|
38
|
-
checked?: Accessor<boolean>;
|
|
39
|
-
}
|
|
40
|
-
interface FormState<TValues extends Record<string, unknown>> {
|
|
41
|
-
/** Individual field states keyed by field name. */
|
|
42
|
-
fields: { [K in keyof TValues]: FieldState<TValues[K]> };
|
|
43
|
-
/** Whether the form is currently being submitted. */
|
|
44
|
-
isSubmitting: Signal<boolean>;
|
|
45
|
-
/** Whether async validation is currently running. */
|
|
46
|
-
isValidating: Signal<boolean>;
|
|
47
|
-
/** Whether any field has an error (computed — read-only). */
|
|
48
|
-
isValid: Accessor<boolean>;
|
|
49
|
-
/** Whether any field value differs from its initial value (computed — read-only). */
|
|
50
|
-
isDirty: Accessor<boolean>;
|
|
51
|
-
/** Number of times the form has been submitted. */
|
|
52
|
-
submitCount: Signal<number>;
|
|
53
|
-
/** Error thrown by onSubmit (undefined if no error). */
|
|
54
|
-
submitError: Signal<unknown>;
|
|
55
|
-
/** All current form values as a plain object. */
|
|
56
|
-
values: () => TValues;
|
|
57
|
-
/** All current errors as a record. */
|
|
58
|
-
errors: () => Partial<Record<keyof TValues, ValidationError>>;
|
|
59
|
-
/** Set a single field's value. */
|
|
60
|
-
setFieldValue: <K extends keyof TValues>(field: K, value: TValues[K]) => void;
|
|
61
|
-
/** Set a single field's error (e.g. from server-side validation). */
|
|
62
|
-
setFieldError: (field: keyof TValues, error: ValidationError) => void;
|
|
63
|
-
/** Set multiple field errors at once (e.g. from server-side validation). */
|
|
64
|
-
setErrors: (errors: Partial<Record<keyof TValues, ValidationError>>) => void;
|
|
65
|
-
/** Clear all field errors. */
|
|
66
|
-
clearErrors: () => void;
|
|
67
|
-
/** Reset a single field to its initial value. */
|
|
68
|
-
resetField: (field: keyof TValues) => void;
|
|
69
|
-
/**
|
|
70
|
-
* Returns props for binding an input element to a field.
|
|
71
|
-
* For text/select: includes `value` signal, `onInput`, and `onBlur`.
|
|
72
|
-
* For checkboxes: pass `{ type: 'checkbox' }` to also get a `checked` signal.
|
|
73
|
-
* For numbers: pass `{ type: 'number' }` to use `valueAsNumber` on input.
|
|
74
|
-
*/
|
|
75
|
-
register: <K extends keyof TValues & string>(field: K, options?: {
|
|
76
|
-
type?: 'checkbox' | 'number';
|
|
77
|
-
}) => FieldRegisterProps<TValues[K]>;
|
|
78
|
-
/**
|
|
79
|
-
* Submit handler — runs validation, then calls onSubmit if valid.
|
|
80
|
-
* Can be called directly or as a form event handler (calls preventDefault).
|
|
81
|
-
*/
|
|
82
|
-
handleSubmit: (e?: Event) => Promise<void>;
|
|
83
|
-
/** Reset all fields to initial values. */
|
|
84
|
-
reset: () => void;
|
|
85
|
-
/** Validate all fields and return whether the form is valid. */
|
|
86
|
-
validate: () => Promise<boolean>;
|
|
87
|
-
}
|
|
88
|
-
interface UseFormOptions<TValues extends Record<string, unknown>> {
|
|
89
|
-
/** Initial values for each field. */
|
|
90
|
-
initialValues: TValues;
|
|
91
|
-
/** Called with validated values on successful submit. */
|
|
92
|
-
onSubmit: (values: TValues) => void | Promise<void>;
|
|
93
|
-
/** Per-field validators. Receives field value and all form values. */
|
|
94
|
-
validators?: Partial<{ [K in keyof TValues]: ValidateFn<TValues[K], TValues> }>;
|
|
95
|
-
/** Schema-level validator (runs after field validators). */
|
|
96
|
-
schema?: SchemaValidateFn<TValues>;
|
|
97
|
-
/** When to validate: 'blur' (default), 'change', or 'submit'. */
|
|
98
|
-
validateOn?: 'blur' | 'change' | 'submit';
|
|
99
|
-
/** Debounce delay in ms for validators (useful for async validators). */
|
|
100
|
-
debounceMs?: number;
|
|
101
|
-
}
|
|
102
|
-
//#endregion
|
|
103
|
-
//#region src/use-form.d.ts
|
|
104
|
-
/**
|
|
105
|
-
* Create a signal-based form. Returns reactive field states, form-level
|
|
106
|
-
* signals, and handlers for submit/reset/validate.
|
|
107
|
-
*
|
|
108
|
-
* @example
|
|
109
|
-
* const form = useForm({
|
|
110
|
-
* initialValues: { email: '', password: '', remember: false },
|
|
111
|
-
* validators: {
|
|
112
|
-
* email: (v) => (!v ? 'Required' : undefined),
|
|
113
|
-
* password: (v, all) => (v.length < 8 ? 'Too short' : undefined),
|
|
114
|
-
* },
|
|
115
|
-
* onSubmit: async (values) => { await login(values) },
|
|
116
|
-
* })
|
|
117
|
-
*
|
|
118
|
-
* // Bind with register():
|
|
119
|
-
* // h('input', form.register('email'))
|
|
120
|
-
* // h('input', { type: 'checkbox', ...form.register('remember', { type: 'checkbox' }) })
|
|
121
|
-
*/
|
|
122
|
-
declare function useForm<TValues extends Record<string, unknown>>(options: UseFormOptions<TValues>): FormState<TValues>;
|
|
123
|
-
//#endregion
|
|
124
|
-
//#region src/use-field-array.d.ts
|
|
125
|
-
interface FieldArrayItem<T> {
|
|
126
|
-
/** Stable key for keyed rendering. */
|
|
127
|
-
key: number;
|
|
128
|
-
/** Reactive value for this item. */
|
|
129
|
-
value: Signal<T>;
|
|
130
|
-
}
|
|
131
|
-
interface UseFieldArrayResult<T> {
|
|
132
|
-
/** Reactive list of items with stable keys. */
|
|
133
|
-
items: Signal<FieldArrayItem<T>[]>;
|
|
134
|
-
/** Number of items. */
|
|
135
|
-
length: Computed<number>;
|
|
136
|
-
/** Append a new item to the end. */
|
|
137
|
-
append: (value: T) => void;
|
|
138
|
-
/** Prepend a new item to the start. */
|
|
139
|
-
prepend: (value: T) => void;
|
|
140
|
-
/** Insert an item at the given index. */
|
|
141
|
-
insert: (index: number, value: T) => void;
|
|
142
|
-
/** Remove the item at the given index. */
|
|
143
|
-
remove: (index: number) => void;
|
|
144
|
-
/** Update the value of an item at the given index. */
|
|
145
|
-
update: (index: number, value: T) => void;
|
|
146
|
-
/** Move an item from one index to another. */
|
|
147
|
-
move: (from: number, to: number) => void;
|
|
148
|
-
/** Swap two items by index. */
|
|
149
|
-
swap: (indexA: number, indexB: number) => void;
|
|
150
|
-
/** Replace all items. */
|
|
151
|
-
replace: (values: T[]) => void;
|
|
152
|
-
/** Get all current values as a plain array. */
|
|
153
|
-
values: () => T[];
|
|
154
|
-
}
|
|
155
|
-
/**
|
|
156
|
-
* Manage a dynamic array of form fields with stable keys.
|
|
157
|
-
*
|
|
158
|
-
* @example
|
|
159
|
-
* const tags = useFieldArray<string>([])
|
|
160
|
-
* tags.append('typescript')
|
|
161
|
-
* tags.append('pyreon')
|
|
162
|
-
* // tags.items() — array of { key, value } for keyed rendering
|
|
163
|
-
*/
|
|
164
|
-
declare function useFieldArray<T>(initial?: T[]): UseFieldArrayResult<T>;
|
|
165
|
-
//#endregion
|
|
166
|
-
//#region src/use-field.d.ts
|
|
167
|
-
interface UseFieldResult<T> {
|
|
168
|
-
/** Current field value (reactive signal). */
|
|
169
|
-
value: Signal<T>;
|
|
170
|
-
/** Field error message (reactive signal). */
|
|
171
|
-
error: Signal<ValidationError>;
|
|
172
|
-
/** Whether the field has been touched (reactive signal). */
|
|
173
|
-
touched: Signal<boolean>;
|
|
174
|
-
/** Whether the field value differs from initial (reactive signal). */
|
|
175
|
-
dirty: Signal<boolean>;
|
|
176
|
-
/** Set the field value. */
|
|
177
|
-
setValue: (value: T) => void;
|
|
178
|
-
/** Mark the field as touched. */
|
|
179
|
-
setTouched: () => void;
|
|
180
|
-
/** Reset the field to its initial value. */
|
|
181
|
-
reset: () => void;
|
|
182
|
-
/** Register props for input binding. */
|
|
183
|
-
register: (opts?: {
|
|
184
|
-
type?: 'checkbox';
|
|
185
|
-
}) => FieldRegisterProps<T>;
|
|
186
|
-
/** Whether the field has an error (computed). */
|
|
187
|
-
hasError: Computed<boolean>;
|
|
188
|
-
/** Whether the field should show its error (touched + has error). */
|
|
189
|
-
showError: Computed<boolean>;
|
|
190
|
-
}
|
|
191
|
-
/**
|
|
192
|
-
* Extract a single field's state and helpers from a form instance.
|
|
193
|
-
* Useful for building isolated field components.
|
|
194
|
-
*
|
|
195
|
-
* @example
|
|
196
|
-
* function EmailField({ form }: { form: FormState<{ email: string }> }) {
|
|
197
|
-
* const field = useField(form, 'email')
|
|
198
|
-
* return (
|
|
199
|
-
* <>
|
|
200
|
-
* <input {...field.register()} />
|
|
201
|
-
* {field.showError() && <span>{field.error()}</span>}
|
|
202
|
-
* </>
|
|
203
|
-
* )
|
|
204
|
-
* }
|
|
205
|
-
*/
|
|
206
|
-
declare function useField<TValues extends Record<string, unknown>, K extends keyof TValues & string>(form: FormState<TValues>, name: K): UseFieldResult<TValues[K]>;
|
|
207
|
-
//#endregion
|
|
208
|
-
//#region src/use-watch.d.ts
|
|
209
|
-
/**
|
|
210
|
-
* Watch specific field values reactively. Returns a computed signal
|
|
211
|
-
* that re-evaluates when any of the watched fields change.
|
|
212
|
-
*
|
|
213
|
-
* @example
|
|
214
|
-
* // Watch a single field
|
|
215
|
-
* const email = useWatch(form, 'email')
|
|
216
|
-
* // email() => current email value
|
|
217
|
-
*
|
|
218
|
-
* @example
|
|
219
|
-
* // Watch multiple fields
|
|
220
|
-
* const [first, last] = useWatch(form, ['firstName', 'lastName'])
|
|
221
|
-
* // first() => firstName value, last() => lastName value
|
|
222
|
-
*
|
|
223
|
-
* @example
|
|
224
|
-
* // Watch all fields
|
|
225
|
-
* const all = useWatch(form)
|
|
226
|
-
* // all() => { email: '...', password: '...' }
|
|
227
|
-
*/
|
|
228
|
-
declare function useWatch<TValues extends Record<string, unknown>, K extends keyof TValues & string>(form: FormState<TValues>, name: K): Signal<TValues[K]>;
|
|
229
|
-
declare function useWatch<TValues extends Record<string, unknown>, K extends (keyof TValues & string)[]>(form: FormState<TValues>, names: K): { [I in keyof K]: Signal<TValues[K[I] & keyof TValues]> };
|
|
230
|
-
declare function useWatch<TValues extends Record<string, unknown>>(form: FormState<TValues>): Computed<TValues>;
|
|
231
|
-
//#endregion
|
|
232
|
-
//#region src/use-form-state.d.ts
|
|
233
|
-
interface FormStateSummary<TValues extends Record<string, unknown>> {
|
|
234
|
-
isSubmitting: boolean;
|
|
235
|
-
isValidating: boolean;
|
|
236
|
-
isValid: boolean;
|
|
237
|
-
isDirty: boolean;
|
|
238
|
-
submitCount: number;
|
|
239
|
-
submitError: unknown;
|
|
240
|
-
touchedFields: Partial<Record<keyof TValues, boolean>>;
|
|
241
|
-
dirtyFields: Partial<Record<keyof TValues, boolean>>;
|
|
242
|
-
errors: Partial<Record<keyof TValues, ValidationError>>;
|
|
243
|
-
}
|
|
244
|
-
/**
|
|
245
|
-
* Subscribe to the full form state as a single computed signal.
|
|
246
|
-
* Useful for rendering form-level UI (submit button disabled state,
|
|
247
|
-
* error summaries, progress indicators).
|
|
248
|
-
*
|
|
249
|
-
* @example
|
|
250
|
-
* const state = useFormState(form)
|
|
251
|
-
* // state() => { isSubmitting, isValid, isDirty, errors, ... }
|
|
252
|
-
*
|
|
253
|
-
* @example
|
|
254
|
-
* // Use a selector for fine-grained reactivity
|
|
255
|
-
* const canSubmit = useFormState(form, (s) => s.isValid && !s.isSubmitting)
|
|
256
|
-
*/
|
|
257
|
-
declare function useFormState<TValues extends Record<string, unknown>>(form: FormState<TValues>): Computed<FormStateSummary<TValues>>;
|
|
258
|
-
declare function useFormState<TValues extends Record<string, unknown>, R>(form: FormState<TValues>, selector: (state: FormStateSummary<TValues>) => R): Computed<R>;
|
|
259
|
-
//#endregion
|
|
260
|
-
//#region src/context.d.ts
|
|
261
|
-
interface FormProviderProps<TValues extends Record<string, unknown>> extends Props {
|
|
262
|
-
form: FormState<TValues>;
|
|
263
|
-
children?: VNodeChild;
|
|
264
|
-
}
|
|
265
|
-
/**
|
|
266
|
-
* Provide a form instance to the component tree so nested components
|
|
267
|
-
* can access it via `useFormContext()`.
|
|
268
|
-
*
|
|
269
|
-
* @example
|
|
270
|
-
* const form = useForm({ initialValues: { email: '' }, onSubmit: ... })
|
|
271
|
-
*
|
|
272
|
-
* <FormProvider form={form}>
|
|
273
|
-
* <EmailField />
|
|
274
|
-
* <SubmitButton />
|
|
275
|
-
* </FormProvider>
|
|
276
|
-
*/
|
|
277
|
-
declare function FormProvider<TValues extends Record<string, unknown>>(props: FormProviderProps<TValues>): VNode;
|
|
278
|
-
/**
|
|
279
|
-
* Access the form instance from the nearest `FormProvider`.
|
|
280
|
-
* Must be called within a component tree wrapped by `FormProvider`.
|
|
281
|
-
*
|
|
282
|
-
* @example
|
|
283
|
-
* function EmailField() {
|
|
284
|
-
* const form = useFormContext<{ email: string }>()
|
|
285
|
-
* return <input {...form.register('email')} />
|
|
286
|
-
* }
|
|
287
|
-
*/
|
|
288
|
-
declare function useFormContext<TValues extends Record<string, unknown> = Record<string, unknown>>(): FormState<TValues>;
|
|
289
|
-
//#endregion
|
|
290
|
-
export { type Accessor, type FieldArrayItem, type FieldRegisterProps, type FieldState, FormProvider, type FormState, type FormStateSummary, type SchemaValidateFn, type UseFieldArrayResult, type UseFieldResult, type UseFormOptions, type ValidateFn, type ValidationError, useField, useFieldArray, useForm, useFormContext, useFormState, useWatch };
|
|
291
|
-
//# sourceMappingURL=index2.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index2.d.ts","names":[],"sources":["../../src/types.ts","../../src/use-form.ts","../../src/use-field-array.ts","../../src/use-field.ts","../../src/use-watch.ts","../../src/use-form-state.ts","../../src/context.ts"],"mappings":"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"}
|