@kontsedal/olas-core 0.0.2 → 0.0.4
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/dist/index.cjs +34 -1
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +52 -2
- package/dist/index.d.cts.map +1 -1
- package/dist/index.d.mts +52 -2
- package/dist/index.d.mts.map +1 -1
- package/dist/index.mjs +33 -2
- package/dist/index.mjs.map +1 -1
- package/dist/{root-De-6KWIZ.mjs → root-BBSlzvJ2.mjs} +251 -18
- package/dist/root-BBSlzvJ2.mjs.map +1 -0
- package/dist/{root-XKEsSmcd.cjs → root-CoafhkTg.cjs} +251 -18
- package/dist/root-CoafhkTg.cjs.map +1 -0
- package/dist/testing.cjs +23 -11
- package/dist/testing.cjs.map +1 -1
- package/dist/testing.d.cts +3 -1
- package/dist/testing.d.cts.map +1 -1
- package/dist/testing.d.mts +3 -1
- package/dist/testing.d.mts.map +1 -1
- package/dist/testing.mjs +23 -11
- package/dist/testing.mjs.map +1 -1
- package/dist/{types-C-zV1JZA.d.mts → types-BCf2nB2N.d.mts} +73 -8
- package/dist/types-BCf2nB2N.d.mts.map +1 -0
- package/dist/{types-DKfpkm17.d.cts → types-Ijeun3qo.d.cts} +73 -8
- package/dist/types-Ijeun3qo.d.cts.map +1 -0
- package/package.json +1 -1
- package/src/controller/types.ts +26 -2
- package/src/forms/field.ts +42 -9
- package/src/forms/form-types.ts +37 -0
- package/src/forms/form.ts +118 -0
- package/src/forms/index.ts +12 -1
- package/src/forms/standard-schema.ts +37 -0
- package/src/forms/validators.ts +31 -0
- package/src/index.ts +13 -3
- package/src/query/entry.ts +10 -3
- package/src/query/infinite.ts +8 -1
- package/src/query/local.ts +1 -0
- package/src/query/structural-share.ts +114 -0
- package/src/query/types.ts +22 -2
- package/src/query/use.ts +53 -13
- package/src/testing.ts +5 -0
- package/dist/root-De-6KWIZ.mjs.map +0 -1
- package/dist/root-XKEsSmcd.cjs.map +0 -1
- package/dist/types-C-zV1JZA.d.mts.map +0 -1
- package/dist/types-DKfpkm17.d.cts.map +0 -1
package/dist/testing.cjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
-
const require_root = require("./root-
|
|
2
|
+
const require_root = require("./root-CoafhkTg.cjs");
|
|
3
3
|
//#region src/testing.ts
|
|
4
4
|
/**
|
|
5
5
|
* Construct an isolated root wrapping a single controller. The returned object
|
|
@@ -48,6 +48,7 @@ function fakeField(initial, overrides) {
|
|
|
48
48
|
reset: overrides?.reset ?? (() => value$.set(currentInitial)),
|
|
49
49
|
markTouched: overrides?.markTouched ?? (() => touched$.set(true)),
|
|
50
50
|
revalidate: overrides?.revalidate ?? (async () => errors$.peek().length === 0),
|
|
51
|
+
setErrors: overrides?.setErrors ?? ((errs) => errors$.set([...errs])),
|
|
51
52
|
dispose: overrides?.dispose ?? (() => {})
|
|
52
53
|
};
|
|
53
54
|
}
|
|
@@ -59,18 +60,29 @@ function fakeField(initial, overrides) {
|
|
|
59
60
|
*/
|
|
60
61
|
function fakeAsyncState(overrides) {
|
|
61
62
|
const data$ = require_root.signal(overrides?.data);
|
|
63
|
+
const error$ = require_root.signal(overrides?.error);
|
|
64
|
+
const status$ = require_root.signal(overrides?.status ?? (overrides?.data !== void 0 ? "success" : "idle"));
|
|
65
|
+
const isLoading$ = require_root.signal(overrides?.isLoading ?? false);
|
|
66
|
+
const isFetching$ = require_root.signal(overrides?.isFetching ?? false);
|
|
67
|
+
const isStale$ = require_root.signal(overrides?.isStale ?? false);
|
|
68
|
+
const lastUpdatedAt$ = require_root.signal(overrides?.lastUpdatedAt);
|
|
69
|
+
const hasPendingMutations$ = require_root.signal(overrides?.hasPendingMutations ?? false);
|
|
70
|
+
const refetch = overrides?.refetch ?? (async () => data$.peek());
|
|
71
|
+
const reset = overrides?.reset ?? (() => {});
|
|
72
|
+
const firstValue = overrides?.firstValue ?? (async () => data$.peek());
|
|
62
73
|
return {
|
|
63
74
|
data: data$,
|
|
64
|
-
error:
|
|
65
|
-
status:
|
|
66
|
-
isLoading:
|
|
67
|
-
isFetching:
|
|
68
|
-
isStale:
|
|
69
|
-
lastUpdatedAt:
|
|
70
|
-
hasPendingMutations:
|
|
71
|
-
refetch
|
|
72
|
-
reset
|
|
73
|
-
firstValue
|
|
75
|
+
error: error$,
|
|
76
|
+
status: status$,
|
|
77
|
+
isLoading: isLoading$,
|
|
78
|
+
isFetching: isFetching$,
|
|
79
|
+
isStale: isStale$,
|
|
80
|
+
lastUpdatedAt: lastUpdatedAt$,
|
|
81
|
+
hasPendingMutations: hasPendingMutations$,
|
|
82
|
+
refetch,
|
|
83
|
+
reset,
|
|
84
|
+
firstValue,
|
|
85
|
+
promise: overrides?.promise ?? firstValue
|
|
74
86
|
};
|
|
75
87
|
}
|
|
76
88
|
//#endregion
|
package/dist/testing.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"testing.cjs","names":["createRootWithProps","signal","computed"],"sources":["../src/testing.ts"],"sourcesContent":["import { createRootWithProps } from './controller/root'\nimport type { ControllerDef, Field, Root, RootOptions } from './controller/types'\nimport type { AsyncState, AsyncStatus } from './query/types'\nimport { computed, type ReadSignal, type Signal, signal } from './signals'\n\n/**\n * Construct an isolated root wrapping a single controller. The returned object\n * is the controller's api plus the standard Root lifecycle controls\n * (`dispose`, `suspend`, `resume`, `__debug`).\n *\n * Equivalent to defining a tiny root wrapper, but ergonomic in tests.\n */\nexport function createTestController<\n Props,\n Api,\n TDeps extends Record<string, unknown> = Record<string, unknown>,\n>(\n def: ControllerDef<Props, Api>,\n options: {\n deps: TDeps\n props: Props\n onError?: RootOptions<TDeps>['onError']\n },\n): Root<Api> {\n return createRootWithProps<Props, Api, TDeps>(def, options.props, {\n deps: options.deps,\n onError: options.onError,\n })\n}\n\n/**\n * Shape-correct fake `Field<T>` for UI tests. Pass an initial value plus any\n * overrides for the read-only signals. The returned object satisfies `Field<T>`\n * so it can be passed straight into `useField(...)` or any component that\n * accepts a real field. See spec §20.10.\n */\nexport function fakeField<T>(\n initial: T,\n overrides?: Partial<{\n errors: string[]\n isValid: boolean\n isDirty: boolean\n touched: boolean\n isValidating: boolean\n set: (value: T) => void\n setAsInitial: (value: T) => void\n reset: () => void\n markTouched: () => void\n revalidate: () => Promise<boolean>\n dispose: () => void\n }>,\n): Field<T> {\n const value$: Signal<T> = signal(initial)\n const errors$: Signal<string[]> = signal(overrides?.errors ?? [])\n const touched$: Signal<boolean> = signal(overrides?.touched ?? false)\n const dirty$: Signal<boolean> = signal(overrides?.isDirty ?? false)\n const validating$: Signal<boolean> = signal(overrides?.isValidating ?? false)\n const isValid$: ReadSignal<boolean> =\n overrides?.isValid !== undefined\n ? signal(overrides.isValid)\n : computed(() => errors$.value.length === 0 && !validating$.value)\n\n let currentInitial = initial\n const set = overrides?.set ?? ((next: T) => value$.set(next))\n const setAsInitial =\n overrides?.setAsInitial ??\n ((next: T) => {\n currentInitial = next\n value$.set(next)\n dirty$.set(false)\n })\n const fake: Field<T> = {\n get value() {\n return value$.value\n },\n peek: () => value$.peek(),\n subscribe: (handler) => value$.subscribe(handler),\n errors: errors$,\n isValid: isValid$,\n isDirty: dirty$,\n touched: touched$,\n isValidating: validating$,\n set,\n setAsInitial,\n reset: overrides?.reset ?? (() => value$.set(currentInitial)),\n markTouched: overrides?.markTouched ?? (() => touched$.set(true)),\n revalidate: overrides?.revalidate ?? (async () => errors$.peek().length === 0),\n dispose: overrides?.dispose ?? (() => {}),\n }\n return fake\n}\n\n/**\n * Shape-correct fake `AsyncState<T>` for UI tests. Pass overrides for any of\n * the signal-backed properties; everything else falls back to inert defaults.\n * The returned object satisfies `AsyncState<T>` so it can stand in for a real\n * query subscription in component tests. See spec §20.10.\n */\nexport function fakeAsyncState<T>(\n overrides?: Partial<{\n data: T | undefined\n error: unknown | undefined\n status: AsyncStatus\n isLoading: boolean\n isFetching: boolean\n isStale: boolean\n lastUpdatedAt: number | undefined\n hasPendingMutations: boolean\n refetch: () => Promise<T>\n reset: () => void\n firstValue: () => Promise<T>\n }>,\n): AsyncState<T> {\n const data$: ReadSignal<T | undefined> = signal(overrides?.data)\n const error$: ReadSignal<unknown | undefined> = signal(overrides?.error)\n const status$: ReadSignal<AsyncStatus> = signal(\n overrides?.status ?? (overrides?.data !== undefined ? 'success' : 'idle'),\n )\n const isLoading$: ReadSignal<boolean> = signal(overrides?.isLoading ?? false)\n const isFetching$: ReadSignal<boolean> = signal(overrides?.isFetching ?? false)\n const isStale$: ReadSignal<boolean> = signal(overrides?.isStale ?? false)\n const lastUpdatedAt$: ReadSignal<number | undefined> = signal(overrides?.lastUpdatedAt)\n const hasPendingMutations$: ReadSignal<boolean> = signal(overrides?.hasPendingMutations ?? false)\n\n const refetch = overrides?.refetch ?? (async () => data$.peek() as T)\n const reset = overrides?.reset ?? (() => {})\n const firstValue = overrides?.firstValue ?? (async () => data$.peek() as T)\n\n return {\n data: data$,\n error: error$,\n status: status$,\n isLoading: isLoading$,\n isFetching: isFetching$,\n isStale: isStale$,\n lastUpdatedAt: lastUpdatedAt$,\n hasPendingMutations: hasPendingMutations$,\n refetch,\n reset,\n firstValue,\n }\n}\n"],"mappings":";;;;;;;;;;AAYA,SAAgB,qBAKd,KACA,SAKW;CACX,OAAOA,aAAAA,oBAAuC,KAAK,QAAQ,OAAO;EAChE,MAAM,QAAQ;EACd,SAAS,QAAQ;CACnB,CAAC;AACH;;;;;;;AAQA,SAAgB,UACd,SACA,
|
|
1
|
+
{"version":3,"file":"testing.cjs","names":["createRootWithProps","signal","computed"],"sources":["../src/testing.ts"],"sourcesContent":["import { createRootWithProps } from './controller/root'\nimport type { ControllerDef, Field, Root, RootOptions } from './controller/types'\nimport type { AsyncState, AsyncStatus } from './query/types'\nimport { computed, type ReadSignal, type Signal, signal } from './signals'\n\n/**\n * Construct an isolated root wrapping a single controller. The returned object\n * is the controller's api plus the standard Root lifecycle controls\n * (`dispose`, `suspend`, `resume`, `__debug`).\n *\n * Equivalent to defining a tiny root wrapper, but ergonomic in tests.\n */\nexport function createTestController<\n Props,\n Api,\n TDeps extends Record<string, unknown> = Record<string, unknown>,\n>(\n def: ControllerDef<Props, Api>,\n options: {\n deps: TDeps\n props: Props\n onError?: RootOptions<TDeps>['onError']\n },\n): Root<Api> {\n return createRootWithProps<Props, Api, TDeps>(def, options.props, {\n deps: options.deps,\n onError: options.onError,\n })\n}\n\n/**\n * Shape-correct fake `Field<T>` for UI tests. Pass an initial value plus any\n * overrides for the read-only signals. The returned object satisfies `Field<T>`\n * so it can be passed straight into `useField(...)` or any component that\n * accepts a real field. See spec §20.10.\n */\nexport function fakeField<T>(\n initial: T,\n overrides?: Partial<{\n errors: string[]\n isValid: boolean\n isDirty: boolean\n touched: boolean\n isValidating: boolean\n set: (value: T) => void\n setAsInitial: (value: T) => void\n reset: () => void\n markTouched: () => void\n revalidate: () => Promise<boolean>\n setErrors: (errors: ReadonlyArray<string>) => void\n dispose: () => void\n }>,\n): Field<T> {\n const value$: Signal<T> = signal(initial)\n const errors$: Signal<string[]> = signal(overrides?.errors ?? [])\n const touched$: Signal<boolean> = signal(overrides?.touched ?? false)\n const dirty$: Signal<boolean> = signal(overrides?.isDirty ?? false)\n const validating$: Signal<boolean> = signal(overrides?.isValidating ?? false)\n const isValid$: ReadSignal<boolean> =\n overrides?.isValid !== undefined\n ? signal(overrides.isValid)\n : computed(() => errors$.value.length === 0 && !validating$.value)\n\n let currentInitial = initial\n const set = overrides?.set ?? ((next: T) => value$.set(next))\n const setAsInitial =\n overrides?.setAsInitial ??\n ((next: T) => {\n currentInitial = next\n value$.set(next)\n dirty$.set(false)\n })\n const fake: Field<T> = {\n get value() {\n return value$.value\n },\n peek: () => value$.peek(),\n subscribe: (handler) => value$.subscribe(handler),\n errors: errors$,\n isValid: isValid$,\n isDirty: dirty$,\n touched: touched$,\n isValidating: validating$,\n set,\n setAsInitial,\n reset: overrides?.reset ?? (() => value$.set(currentInitial)),\n markTouched: overrides?.markTouched ?? (() => touched$.set(true)),\n revalidate: overrides?.revalidate ?? (async () => errors$.peek().length === 0),\n setErrors: overrides?.setErrors ?? ((errs) => errors$.set([...errs])),\n dispose: overrides?.dispose ?? (() => {}),\n }\n return fake\n}\n\n/**\n * Shape-correct fake `AsyncState<T>` for UI tests. Pass overrides for any of\n * the signal-backed properties; everything else falls back to inert defaults.\n * The returned object satisfies `AsyncState<T>` so it can stand in for a real\n * query subscription in component tests. See spec §20.10.\n */\nexport function fakeAsyncState<T>(\n overrides?: Partial<{\n data: T | undefined\n error: unknown | undefined\n status: AsyncStatus\n isLoading: boolean\n isFetching: boolean\n isStale: boolean\n lastUpdatedAt: number | undefined\n hasPendingMutations: boolean\n refetch: () => Promise<T>\n reset: () => void\n firstValue: () => Promise<T>\n promise: () => Promise<T>\n }>,\n): AsyncState<T> {\n const data$: ReadSignal<T | undefined> = signal(overrides?.data)\n const error$: ReadSignal<unknown | undefined> = signal(overrides?.error)\n const status$: ReadSignal<AsyncStatus> = signal(\n overrides?.status ?? (overrides?.data !== undefined ? 'success' : 'idle'),\n )\n const isLoading$: ReadSignal<boolean> = signal(overrides?.isLoading ?? false)\n const isFetching$: ReadSignal<boolean> = signal(overrides?.isFetching ?? false)\n const isStale$: ReadSignal<boolean> = signal(overrides?.isStale ?? false)\n const lastUpdatedAt$: ReadSignal<number | undefined> = signal(overrides?.lastUpdatedAt)\n const hasPendingMutations$: ReadSignal<boolean> = signal(overrides?.hasPendingMutations ?? false)\n\n const refetch = overrides?.refetch ?? (async () => data$.peek() as T)\n const reset = overrides?.reset ?? (() => {})\n const firstValue = overrides?.firstValue ?? (async () => data$.peek() as T)\n const promise = overrides?.promise ?? firstValue\n\n return {\n data: data$,\n error: error$,\n status: status$,\n isLoading: isLoading$,\n isFetching: isFetching$,\n isStale: isStale$,\n lastUpdatedAt: lastUpdatedAt$,\n hasPendingMutations: hasPendingMutations$,\n refetch,\n reset,\n firstValue,\n promise,\n }\n}\n"],"mappings":";;;;;;;;;;AAYA,SAAgB,qBAKd,KACA,SAKW;CACX,OAAOA,aAAAA,oBAAuC,KAAK,QAAQ,OAAO;EAChE,MAAM,QAAQ;EACd,SAAS,QAAQ;CACnB,CAAC;AACH;;;;;;;AAQA,SAAgB,UACd,SACA,WAcU;CACV,MAAM,SAAoBC,aAAAA,OAAO,OAAO;CACxC,MAAM,UAA4BA,aAAAA,OAAO,WAAW,UAAU,CAAC,CAAC;CAChE,MAAM,WAA4BA,aAAAA,OAAO,WAAW,WAAW,KAAK;CACpE,MAAM,SAA0BA,aAAAA,OAAO,WAAW,WAAW,KAAK;CAClE,MAAM,cAA+BA,aAAAA,OAAO,WAAW,gBAAgB,KAAK;CAC5E,MAAM,WACJ,WAAW,YAAY,KAAA,IACnBA,aAAAA,OAAO,UAAU,OAAO,IACxBC,aAAAA,eAAe,QAAQ,MAAM,WAAW,KAAK,CAAC,YAAY,KAAK;CAErE,IAAI,iBAAiB;CA4BrB,OAAO;EAlBL,IAAI,QAAQ;GACV,OAAO,OAAO;EAChB;EACA,YAAY,OAAO,KAAK;EACxB,YAAY,YAAY,OAAO,UAAU,OAAO;EAChD,QAAQ;EACR,SAAS;EACT,SAAS;EACT,SAAS;EACT,cAAc;EACd,KAnBU,WAAW,SAAS,SAAY,OAAO,IAAI,IAAI;EAoBzD,cAlBA,WAAW,kBACT,SAAY;GACZ,iBAAiB;GACjB,OAAO,IAAI,IAAI;GACf,OAAO,IAAI,KAAK;EAClB;EAcA,OAAO,WAAW,gBAAgB,OAAO,IAAI,cAAc;EAC3D,aAAa,WAAW,sBAAsB,SAAS,IAAI,IAAI;EAC/D,YAAY,WAAW,eAAe,YAAY,QAAQ,KAAK,EAAE,WAAW;EAC5E,WAAW,WAAW,eAAe,SAAS,QAAQ,IAAI,CAAC,GAAG,IAAI,CAAC;EACnE,SAAS,WAAW,kBAAkB,CAAC;CAE/B;AACZ;;;;;;;AAQA,SAAgB,eACd,WAce;CACf,MAAM,QAAmCD,aAAAA,OAAO,WAAW,IAAI;CAC/D,MAAM,SAA0CA,aAAAA,OAAO,WAAW,KAAK;CACvE,MAAM,UAAmCA,aAAAA,OACvC,WAAW,WAAW,WAAW,SAAS,KAAA,IAAY,YAAY,OACpE;CACA,MAAM,aAAkCA,aAAAA,OAAO,WAAW,aAAa,KAAK;CAC5E,MAAM,cAAmCA,aAAAA,OAAO,WAAW,cAAc,KAAK;CAC9E,MAAM,WAAgCA,aAAAA,OAAO,WAAW,WAAW,KAAK;CACxE,MAAM,iBAAiDA,aAAAA,OAAO,WAAW,aAAa;CACtF,MAAM,uBAA4CA,aAAAA,OAAO,WAAW,uBAAuB,KAAK;CAEhG,MAAM,UAAU,WAAW,YAAY,YAAY,MAAM,KAAK;CAC9D,MAAM,QAAQ,WAAW,gBAAgB,CAAC;CAC1C,MAAM,aAAa,WAAW,eAAe,YAAY,MAAM,KAAK;CAGpE,OAAO;EACL,MAAM;EACN,OAAO;EACP,QAAQ;EACR,WAAW;EACX,YAAY;EACZ,SAAS;EACT,eAAe;EACf,qBAAqB;EACrB;EACA;EACA;EACA,SAdc,WAAW,WAAW;CAetC;AACF"}
|
package/dist/testing.d.cts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { F as AsyncStatus, P as AsyncState, d as Field, m as RootOptions, p as Root, s as ControllerDef } from "./types-
|
|
1
|
+
import { F as AsyncStatus, P as AsyncState, d as Field, m as RootOptions, p as Root, s as ControllerDef } from "./types-Ijeun3qo.cjs";
|
|
2
2
|
|
|
3
3
|
//#region src/testing.d.ts
|
|
4
4
|
/**
|
|
@@ -30,6 +30,7 @@ declare function fakeField<T>(initial: T, overrides?: Partial<{
|
|
|
30
30
|
reset: () => void;
|
|
31
31
|
markTouched: () => void;
|
|
32
32
|
revalidate: () => Promise<boolean>;
|
|
33
|
+
setErrors: (errors: ReadonlyArray<string>) => void;
|
|
33
34
|
dispose: () => void;
|
|
34
35
|
}>): Field<T>;
|
|
35
36
|
/**
|
|
@@ -50,6 +51,7 @@ declare function fakeAsyncState<T>(overrides?: Partial<{
|
|
|
50
51
|
refetch: () => Promise<T>;
|
|
51
52
|
reset: () => void;
|
|
52
53
|
firstValue: () => Promise<T>;
|
|
54
|
+
promise: () => Promise<T>;
|
|
53
55
|
}>): AsyncState<T>;
|
|
54
56
|
//#endregion
|
|
55
57
|
export { createTestController, fakeAsyncState, fakeField };
|
package/dist/testing.d.cts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"testing.d.cts","names":[],"sources":["../src/testing.ts"],"mappings":";;;;AAYA;;;;;;iBAAgB,oBAAA,2BAGA,MAAA,oBAA0B,MAAA,kBAAA,CAExC,GAAA,EAAK,aAAA,CAAc,KAAA,EAAO,GAAA,GAC1B,OAAA;EACE,IAAA,EAAM,KAAA;EACN,KAAA,EAAO,KAAA;EACP,OAAA,GAAU,WAAA,CAAY,KAAA;AAAA,IAEvB,IAAA,CAAK,GAAA;;;;;;;iBAaQ,SAAA,GAAA,CACd,OAAA,EAAS,CAAA,EACT,SAAA,GAAY,OAAA;EACV,MAAA;EACA,OAAA;EACA,OAAA;EACA,OAAA;EACA,YAAA;EACA,GAAA,GAAM,KAAA,EAAO,CAAA;EACb,YAAA,GAAe,KAAA,EAAO,CAAA;EACtB,KAAA;EACA,WAAA;EACA,UAAA,QAAkB,OAAA;EAClB,OAAA;AAAA,KAED,KAAA,CAAM,CAAA
|
|
1
|
+
{"version":3,"file":"testing.d.cts","names":[],"sources":["../src/testing.ts"],"mappings":";;;;AAYA;;;;;;iBAAgB,oBAAA,2BAGA,MAAA,oBAA0B,MAAA,kBAAA,CAExC,GAAA,EAAK,aAAA,CAAc,KAAA,EAAO,GAAA,GAC1B,OAAA;EACE,IAAA,EAAM,KAAA;EACN,KAAA,EAAO,KAAA;EACP,OAAA,GAAU,WAAA,CAAY,KAAA;AAAA,IAEvB,IAAA,CAAK,GAAA;;;;;;;iBAaQ,SAAA,GAAA,CACd,OAAA,EAAS,CAAA,EACT,SAAA,GAAY,OAAA;EACV,MAAA;EACA,OAAA;EACA,OAAA;EACA,OAAA;EACA,YAAA;EACA,GAAA,GAAM,KAAA,EAAO,CAAA;EACb,YAAA,GAAe,KAAA,EAAO,CAAA;EACtB,KAAA;EACA,WAAA;EACA,UAAA,QAAkB,OAAA;EAClB,SAAA,GAAY,MAAA,EAAQ,aAAA;EACpB,OAAA;AAAA,KAED,KAAA,CAAM,CAAA;;;;;;AA7BE;iBA6EK,cAAA,GAAA,CACd,SAAA,GAAY,OAAA;EACV,IAAA,EAAM,CAAA;EACN,KAAA;EACA,MAAA,EAAQ,WAAA;EACR,SAAA;EACA,UAAA;EACA,OAAA;EACA,aAAA;EACA,mBAAA;EACA,OAAA,QAAe,OAAA,CAAQ,CAAA;EACvB,KAAA;EACA,UAAA,QAAkB,OAAA,CAAQ,CAAA;EAC1B,OAAA,QAAe,OAAA,CAAQ,CAAA;AAAA,KAExB,UAAA,CAAW,CAAA"}
|
package/dist/testing.d.mts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { F as AsyncStatus, P as AsyncState, d as Field, m as RootOptions, p as Root, s as ControllerDef } from "./types-
|
|
1
|
+
import { F as AsyncStatus, P as AsyncState, d as Field, m as RootOptions, p as Root, s as ControllerDef } from "./types-BCf2nB2N.mjs";
|
|
2
2
|
|
|
3
3
|
//#region src/testing.d.ts
|
|
4
4
|
/**
|
|
@@ -30,6 +30,7 @@ declare function fakeField<T>(initial: T, overrides?: Partial<{
|
|
|
30
30
|
reset: () => void;
|
|
31
31
|
markTouched: () => void;
|
|
32
32
|
revalidate: () => Promise<boolean>;
|
|
33
|
+
setErrors: (errors: ReadonlyArray<string>) => void;
|
|
33
34
|
dispose: () => void;
|
|
34
35
|
}>): Field<T>;
|
|
35
36
|
/**
|
|
@@ -50,6 +51,7 @@ declare function fakeAsyncState<T>(overrides?: Partial<{
|
|
|
50
51
|
refetch: () => Promise<T>;
|
|
51
52
|
reset: () => void;
|
|
52
53
|
firstValue: () => Promise<T>;
|
|
54
|
+
promise: () => Promise<T>;
|
|
53
55
|
}>): AsyncState<T>;
|
|
54
56
|
//#endregion
|
|
55
57
|
export { createTestController, fakeAsyncState, fakeField };
|
package/dist/testing.d.mts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"testing.d.mts","names":[],"sources":["../src/testing.ts"],"mappings":";;;;AAYA;;;;;;iBAAgB,oBAAA,2BAGA,MAAA,oBAA0B,MAAA,kBAAA,CAExC,GAAA,EAAK,aAAA,CAAc,KAAA,EAAO,GAAA,GAC1B,OAAA;EACE,IAAA,EAAM,KAAA;EACN,KAAA,EAAO,KAAA;EACP,OAAA,GAAU,WAAA,CAAY,KAAA;AAAA,IAEvB,IAAA,CAAK,GAAA;;;;;;;iBAaQ,SAAA,GAAA,CACd,OAAA,EAAS,CAAA,EACT,SAAA,GAAY,OAAA;EACV,MAAA;EACA,OAAA;EACA,OAAA;EACA,OAAA;EACA,YAAA;EACA,GAAA,GAAM,KAAA,EAAO,CAAA;EACb,YAAA,GAAe,KAAA,EAAO,CAAA;EACtB,KAAA;EACA,WAAA;EACA,UAAA,QAAkB,OAAA;EAClB,OAAA;AAAA,KAED,KAAA,CAAM,CAAA
|
|
1
|
+
{"version":3,"file":"testing.d.mts","names":[],"sources":["../src/testing.ts"],"mappings":";;;;AAYA;;;;;;iBAAgB,oBAAA,2BAGA,MAAA,oBAA0B,MAAA,kBAAA,CAExC,GAAA,EAAK,aAAA,CAAc,KAAA,EAAO,GAAA,GAC1B,OAAA;EACE,IAAA,EAAM,KAAA;EACN,KAAA,EAAO,KAAA;EACP,OAAA,GAAU,WAAA,CAAY,KAAA;AAAA,IAEvB,IAAA,CAAK,GAAA;;;;;;;iBAaQ,SAAA,GAAA,CACd,OAAA,EAAS,CAAA,EACT,SAAA,GAAY,OAAA;EACV,MAAA;EACA,OAAA;EACA,OAAA;EACA,OAAA;EACA,YAAA;EACA,GAAA,GAAM,KAAA,EAAO,CAAA;EACb,YAAA,GAAe,KAAA,EAAO,CAAA;EACtB,KAAA;EACA,WAAA;EACA,UAAA,QAAkB,OAAA;EAClB,SAAA,GAAY,MAAA,EAAQ,aAAA;EACpB,OAAA;AAAA,KAED,KAAA,CAAM,CAAA;;;;;;AA7BE;iBA6EK,cAAA,GAAA,CACd,SAAA,GAAY,OAAA;EACV,IAAA,EAAM,CAAA;EACN,KAAA;EACA,MAAA,EAAQ,WAAA;EACR,SAAA;EACA,UAAA;EACA,OAAA;EACA,aAAA;EACA,mBAAA;EACA,OAAA,QAAe,OAAA,CAAQ,CAAA;EACvB,KAAA;EACA,UAAA,QAAkB,OAAA,CAAQ,CAAA;EAC1B,OAAA,QAAe,OAAA,CAAQ,CAAA;AAAA,KAExB,UAAA,CAAW,CAAA"}
|
package/dist/testing.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { f as signal, n as createRootWithProps, u as computed } from "./root-
|
|
1
|
+
import { f as signal, n as createRootWithProps, u as computed } from "./root-BBSlzvJ2.mjs";
|
|
2
2
|
//#region src/testing.ts
|
|
3
3
|
/**
|
|
4
4
|
* Construct an isolated root wrapping a single controller. The returned object
|
|
@@ -47,6 +47,7 @@ function fakeField(initial, overrides) {
|
|
|
47
47
|
reset: overrides?.reset ?? (() => value$.set(currentInitial)),
|
|
48
48
|
markTouched: overrides?.markTouched ?? (() => touched$.set(true)),
|
|
49
49
|
revalidate: overrides?.revalidate ?? (async () => errors$.peek().length === 0),
|
|
50
|
+
setErrors: overrides?.setErrors ?? ((errs) => errors$.set([...errs])),
|
|
50
51
|
dispose: overrides?.dispose ?? (() => {})
|
|
51
52
|
};
|
|
52
53
|
}
|
|
@@ -58,18 +59,29 @@ function fakeField(initial, overrides) {
|
|
|
58
59
|
*/
|
|
59
60
|
function fakeAsyncState(overrides) {
|
|
60
61
|
const data$ = signal(overrides?.data);
|
|
62
|
+
const error$ = signal(overrides?.error);
|
|
63
|
+
const status$ = signal(overrides?.status ?? (overrides?.data !== void 0 ? "success" : "idle"));
|
|
64
|
+
const isLoading$ = signal(overrides?.isLoading ?? false);
|
|
65
|
+
const isFetching$ = signal(overrides?.isFetching ?? false);
|
|
66
|
+
const isStale$ = signal(overrides?.isStale ?? false);
|
|
67
|
+
const lastUpdatedAt$ = signal(overrides?.lastUpdatedAt);
|
|
68
|
+
const hasPendingMutations$ = signal(overrides?.hasPendingMutations ?? false);
|
|
69
|
+
const refetch = overrides?.refetch ?? (async () => data$.peek());
|
|
70
|
+
const reset = overrides?.reset ?? (() => {});
|
|
71
|
+
const firstValue = overrides?.firstValue ?? (async () => data$.peek());
|
|
61
72
|
return {
|
|
62
73
|
data: data$,
|
|
63
|
-
error:
|
|
64
|
-
status:
|
|
65
|
-
isLoading:
|
|
66
|
-
isFetching:
|
|
67
|
-
isStale:
|
|
68
|
-
lastUpdatedAt:
|
|
69
|
-
hasPendingMutations:
|
|
70
|
-
refetch
|
|
71
|
-
reset
|
|
72
|
-
firstValue
|
|
74
|
+
error: error$,
|
|
75
|
+
status: status$,
|
|
76
|
+
isLoading: isLoading$,
|
|
77
|
+
isFetching: isFetching$,
|
|
78
|
+
isStale: isStale$,
|
|
79
|
+
lastUpdatedAt: lastUpdatedAt$,
|
|
80
|
+
hasPendingMutations: hasPendingMutations$,
|
|
81
|
+
refetch,
|
|
82
|
+
reset,
|
|
83
|
+
firstValue,
|
|
84
|
+
promise: overrides?.promise ?? firstValue
|
|
73
85
|
};
|
|
74
86
|
}
|
|
75
87
|
//#endregion
|
package/dist/testing.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"testing.mjs","names":[],"sources":["../src/testing.ts"],"sourcesContent":["import { createRootWithProps } from './controller/root'\nimport type { ControllerDef, Field, Root, RootOptions } from './controller/types'\nimport type { AsyncState, AsyncStatus } from './query/types'\nimport { computed, type ReadSignal, type Signal, signal } from './signals'\n\n/**\n * Construct an isolated root wrapping a single controller. The returned object\n * is the controller's api plus the standard Root lifecycle controls\n * (`dispose`, `suspend`, `resume`, `__debug`).\n *\n * Equivalent to defining a tiny root wrapper, but ergonomic in tests.\n */\nexport function createTestController<\n Props,\n Api,\n TDeps extends Record<string, unknown> = Record<string, unknown>,\n>(\n def: ControllerDef<Props, Api>,\n options: {\n deps: TDeps\n props: Props\n onError?: RootOptions<TDeps>['onError']\n },\n): Root<Api> {\n return createRootWithProps<Props, Api, TDeps>(def, options.props, {\n deps: options.deps,\n onError: options.onError,\n })\n}\n\n/**\n * Shape-correct fake `Field<T>` for UI tests. Pass an initial value plus any\n * overrides for the read-only signals. The returned object satisfies `Field<T>`\n * so it can be passed straight into `useField(...)` or any component that\n * accepts a real field. See spec §20.10.\n */\nexport function fakeField<T>(\n initial: T,\n overrides?: Partial<{\n errors: string[]\n isValid: boolean\n isDirty: boolean\n touched: boolean\n isValidating: boolean\n set: (value: T) => void\n setAsInitial: (value: T) => void\n reset: () => void\n markTouched: () => void\n revalidate: () => Promise<boolean>\n dispose: () => void\n }>,\n): Field<T> {\n const value$: Signal<T> = signal(initial)\n const errors$: Signal<string[]> = signal(overrides?.errors ?? [])\n const touched$: Signal<boolean> = signal(overrides?.touched ?? false)\n const dirty$: Signal<boolean> = signal(overrides?.isDirty ?? false)\n const validating$: Signal<boolean> = signal(overrides?.isValidating ?? false)\n const isValid$: ReadSignal<boolean> =\n overrides?.isValid !== undefined\n ? signal(overrides.isValid)\n : computed(() => errors$.value.length === 0 && !validating$.value)\n\n let currentInitial = initial\n const set = overrides?.set ?? ((next: T) => value$.set(next))\n const setAsInitial =\n overrides?.setAsInitial ??\n ((next: T) => {\n currentInitial = next\n value$.set(next)\n dirty$.set(false)\n })\n const fake: Field<T> = {\n get value() {\n return value$.value\n },\n peek: () => value$.peek(),\n subscribe: (handler) => value$.subscribe(handler),\n errors: errors$,\n isValid: isValid$,\n isDirty: dirty$,\n touched: touched$,\n isValidating: validating$,\n set,\n setAsInitial,\n reset: overrides?.reset ?? (() => value$.set(currentInitial)),\n markTouched: overrides?.markTouched ?? (() => touched$.set(true)),\n revalidate: overrides?.revalidate ?? (async () => errors$.peek().length === 0),\n dispose: overrides?.dispose ?? (() => {}),\n }\n return fake\n}\n\n/**\n * Shape-correct fake `AsyncState<T>` for UI tests. Pass overrides for any of\n * the signal-backed properties; everything else falls back to inert defaults.\n * The returned object satisfies `AsyncState<T>` so it can stand in for a real\n * query subscription in component tests. See spec §20.10.\n */\nexport function fakeAsyncState<T>(\n overrides?: Partial<{\n data: T | undefined\n error: unknown | undefined\n status: AsyncStatus\n isLoading: boolean\n isFetching: boolean\n isStale: boolean\n lastUpdatedAt: number | undefined\n hasPendingMutations: boolean\n refetch: () => Promise<T>\n reset: () => void\n firstValue: () => Promise<T>\n }>,\n): AsyncState<T> {\n const data$: ReadSignal<T | undefined> = signal(overrides?.data)\n const error$: ReadSignal<unknown | undefined> = signal(overrides?.error)\n const status$: ReadSignal<AsyncStatus> = signal(\n overrides?.status ?? (overrides?.data !== undefined ? 'success' : 'idle'),\n )\n const isLoading$: ReadSignal<boolean> = signal(overrides?.isLoading ?? false)\n const isFetching$: ReadSignal<boolean> = signal(overrides?.isFetching ?? false)\n const isStale$: ReadSignal<boolean> = signal(overrides?.isStale ?? false)\n const lastUpdatedAt$: ReadSignal<number | undefined> = signal(overrides?.lastUpdatedAt)\n const hasPendingMutations$: ReadSignal<boolean> = signal(overrides?.hasPendingMutations ?? false)\n\n const refetch = overrides?.refetch ?? (async () => data$.peek() as T)\n const reset = overrides?.reset ?? (() => {})\n const firstValue = overrides?.firstValue ?? (async () => data$.peek() as T)\n\n return {\n data: data$,\n error: error$,\n status: status$,\n isLoading: isLoading$,\n isFetching: isFetching$,\n isStale: isStale$,\n lastUpdatedAt: lastUpdatedAt$,\n hasPendingMutations: hasPendingMutations$,\n refetch,\n reset,\n firstValue,\n }\n}\n"],"mappings":";;;;;;;;;AAYA,SAAgB,qBAKd,KACA,SAKW;CACX,OAAO,oBAAuC,KAAK,QAAQ,OAAO;EAChE,MAAM,QAAQ;EACd,SAAS,QAAQ;CACnB,CAAC;AACH;;;;;;;AAQA,SAAgB,UACd,SACA,
|
|
1
|
+
{"version":3,"file":"testing.mjs","names":[],"sources":["../src/testing.ts"],"sourcesContent":["import { createRootWithProps } from './controller/root'\nimport type { ControllerDef, Field, Root, RootOptions } from './controller/types'\nimport type { AsyncState, AsyncStatus } from './query/types'\nimport { computed, type ReadSignal, type Signal, signal } from './signals'\n\n/**\n * Construct an isolated root wrapping a single controller. The returned object\n * is the controller's api plus the standard Root lifecycle controls\n * (`dispose`, `suspend`, `resume`, `__debug`).\n *\n * Equivalent to defining a tiny root wrapper, but ergonomic in tests.\n */\nexport function createTestController<\n Props,\n Api,\n TDeps extends Record<string, unknown> = Record<string, unknown>,\n>(\n def: ControllerDef<Props, Api>,\n options: {\n deps: TDeps\n props: Props\n onError?: RootOptions<TDeps>['onError']\n },\n): Root<Api> {\n return createRootWithProps<Props, Api, TDeps>(def, options.props, {\n deps: options.deps,\n onError: options.onError,\n })\n}\n\n/**\n * Shape-correct fake `Field<T>` for UI tests. Pass an initial value plus any\n * overrides for the read-only signals. The returned object satisfies `Field<T>`\n * so it can be passed straight into `useField(...)` or any component that\n * accepts a real field. See spec §20.10.\n */\nexport function fakeField<T>(\n initial: T,\n overrides?: Partial<{\n errors: string[]\n isValid: boolean\n isDirty: boolean\n touched: boolean\n isValidating: boolean\n set: (value: T) => void\n setAsInitial: (value: T) => void\n reset: () => void\n markTouched: () => void\n revalidate: () => Promise<boolean>\n setErrors: (errors: ReadonlyArray<string>) => void\n dispose: () => void\n }>,\n): Field<T> {\n const value$: Signal<T> = signal(initial)\n const errors$: Signal<string[]> = signal(overrides?.errors ?? [])\n const touched$: Signal<boolean> = signal(overrides?.touched ?? false)\n const dirty$: Signal<boolean> = signal(overrides?.isDirty ?? false)\n const validating$: Signal<boolean> = signal(overrides?.isValidating ?? false)\n const isValid$: ReadSignal<boolean> =\n overrides?.isValid !== undefined\n ? signal(overrides.isValid)\n : computed(() => errors$.value.length === 0 && !validating$.value)\n\n let currentInitial = initial\n const set = overrides?.set ?? ((next: T) => value$.set(next))\n const setAsInitial =\n overrides?.setAsInitial ??\n ((next: T) => {\n currentInitial = next\n value$.set(next)\n dirty$.set(false)\n })\n const fake: Field<T> = {\n get value() {\n return value$.value\n },\n peek: () => value$.peek(),\n subscribe: (handler) => value$.subscribe(handler),\n errors: errors$,\n isValid: isValid$,\n isDirty: dirty$,\n touched: touched$,\n isValidating: validating$,\n set,\n setAsInitial,\n reset: overrides?.reset ?? (() => value$.set(currentInitial)),\n markTouched: overrides?.markTouched ?? (() => touched$.set(true)),\n revalidate: overrides?.revalidate ?? (async () => errors$.peek().length === 0),\n setErrors: overrides?.setErrors ?? ((errs) => errors$.set([...errs])),\n dispose: overrides?.dispose ?? (() => {}),\n }\n return fake\n}\n\n/**\n * Shape-correct fake `AsyncState<T>` for UI tests. Pass overrides for any of\n * the signal-backed properties; everything else falls back to inert defaults.\n * The returned object satisfies `AsyncState<T>` so it can stand in for a real\n * query subscription in component tests. See spec §20.10.\n */\nexport function fakeAsyncState<T>(\n overrides?: Partial<{\n data: T | undefined\n error: unknown | undefined\n status: AsyncStatus\n isLoading: boolean\n isFetching: boolean\n isStale: boolean\n lastUpdatedAt: number | undefined\n hasPendingMutations: boolean\n refetch: () => Promise<T>\n reset: () => void\n firstValue: () => Promise<T>\n promise: () => Promise<T>\n }>,\n): AsyncState<T> {\n const data$: ReadSignal<T | undefined> = signal(overrides?.data)\n const error$: ReadSignal<unknown | undefined> = signal(overrides?.error)\n const status$: ReadSignal<AsyncStatus> = signal(\n overrides?.status ?? (overrides?.data !== undefined ? 'success' : 'idle'),\n )\n const isLoading$: ReadSignal<boolean> = signal(overrides?.isLoading ?? false)\n const isFetching$: ReadSignal<boolean> = signal(overrides?.isFetching ?? false)\n const isStale$: ReadSignal<boolean> = signal(overrides?.isStale ?? false)\n const lastUpdatedAt$: ReadSignal<number | undefined> = signal(overrides?.lastUpdatedAt)\n const hasPendingMutations$: ReadSignal<boolean> = signal(overrides?.hasPendingMutations ?? false)\n\n const refetch = overrides?.refetch ?? (async () => data$.peek() as T)\n const reset = overrides?.reset ?? (() => {})\n const firstValue = overrides?.firstValue ?? (async () => data$.peek() as T)\n const promise = overrides?.promise ?? firstValue\n\n return {\n data: data$,\n error: error$,\n status: status$,\n isLoading: isLoading$,\n isFetching: isFetching$,\n isStale: isStale$,\n lastUpdatedAt: lastUpdatedAt$,\n hasPendingMutations: hasPendingMutations$,\n refetch,\n reset,\n firstValue,\n promise,\n }\n}\n"],"mappings":";;;;;;;;;AAYA,SAAgB,qBAKd,KACA,SAKW;CACX,OAAO,oBAAuC,KAAK,QAAQ,OAAO;EAChE,MAAM,QAAQ;EACd,SAAS,QAAQ;CACnB,CAAC;AACH;;;;;;;AAQA,SAAgB,UACd,SACA,WAcU;CACV,MAAM,SAAoB,OAAO,OAAO;CACxC,MAAM,UAA4B,OAAO,WAAW,UAAU,CAAC,CAAC;CAChE,MAAM,WAA4B,OAAO,WAAW,WAAW,KAAK;CACpE,MAAM,SAA0B,OAAO,WAAW,WAAW,KAAK;CAClE,MAAM,cAA+B,OAAO,WAAW,gBAAgB,KAAK;CAC5E,MAAM,WACJ,WAAW,YAAY,KAAA,IACnB,OAAO,UAAU,OAAO,IACxB,eAAe,QAAQ,MAAM,WAAW,KAAK,CAAC,YAAY,KAAK;CAErE,IAAI,iBAAiB;CA4BrB,OAAO;EAlBL,IAAI,QAAQ;GACV,OAAO,OAAO;EAChB;EACA,YAAY,OAAO,KAAK;EACxB,YAAY,YAAY,OAAO,UAAU,OAAO;EAChD,QAAQ;EACR,SAAS;EACT,SAAS;EACT,SAAS;EACT,cAAc;EACd,KAnBU,WAAW,SAAS,SAAY,OAAO,IAAI,IAAI;EAoBzD,cAlBA,WAAW,kBACT,SAAY;GACZ,iBAAiB;GACjB,OAAO,IAAI,IAAI;GACf,OAAO,IAAI,KAAK;EAClB;EAcA,OAAO,WAAW,gBAAgB,OAAO,IAAI,cAAc;EAC3D,aAAa,WAAW,sBAAsB,SAAS,IAAI,IAAI;EAC/D,YAAY,WAAW,eAAe,YAAY,QAAQ,KAAK,EAAE,WAAW;EAC5E,WAAW,WAAW,eAAe,SAAS,QAAQ,IAAI,CAAC,GAAG,IAAI,CAAC;EACnE,SAAS,WAAW,kBAAkB,CAAC;CAE/B;AACZ;;;;;;;AAQA,SAAgB,eACd,WAce;CACf,MAAM,QAAmC,OAAO,WAAW,IAAI;CAC/D,MAAM,SAA0C,OAAO,WAAW,KAAK;CACvE,MAAM,UAAmC,OACvC,WAAW,WAAW,WAAW,SAAS,KAAA,IAAY,YAAY,OACpE;CACA,MAAM,aAAkC,OAAO,WAAW,aAAa,KAAK;CAC5E,MAAM,cAAmC,OAAO,WAAW,cAAc,KAAK;CAC9E,MAAM,WAAgC,OAAO,WAAW,WAAW,KAAK;CACxE,MAAM,iBAAiD,OAAO,WAAW,aAAa;CACtF,MAAM,uBAA4C,OAAO,WAAW,uBAAuB,KAAK;CAEhG,MAAM,UAAU,WAAW,YAAY,YAAY,MAAM,KAAK;CAC9D,MAAM,QAAQ,WAAW,gBAAgB,CAAC;CAC1C,MAAM,aAAa,WAAW,eAAe,YAAY,MAAM,KAAK;CAGpE,OAAO;EACL,MAAM;EACN,OAAO;EACP,QAAQ;EACR,WAAW;EACX,YAAY;EACZ,SAAS;EACT,eAAe;EACf,qBAAqB;EACrB;EACA;EACA;EACA,SAdc,WAAW,WAAW;CAetC;AACF"}
|
|
@@ -143,7 +143,21 @@ type Form<S extends FormSchema> = {
|
|
|
143
143
|
readonly isValid: ReadSignal<boolean>;
|
|
144
144
|
readonly isDirty: ReadSignal<boolean>;
|
|
145
145
|
readonly touched: ReadSignal<boolean>;
|
|
146
|
-
readonly isValidating: ReadSignal<boolean>;
|
|
146
|
+
readonly isValidating: ReadSignal<boolean>;
|
|
147
|
+
/**
|
|
148
|
+
* `true` while a `submit(...)` is in flight. Clears when the handler
|
|
149
|
+
* resolves, throws, or pre-submit validation fails.
|
|
150
|
+
*/
|
|
151
|
+
readonly isSubmitting: ReadSignal<boolean>; /** Number of times `submit(...)` has been called. Bumps before the handler runs. */
|
|
152
|
+
readonly submitCount: ReadSignal<number>;
|
|
153
|
+
/**
|
|
154
|
+
* The thrown value from the most recent failed submission, if any.
|
|
155
|
+
* Cleared at the start of each new `submit(...)` call and on `reset()`.
|
|
156
|
+
* Note that a validation failure ("submit blocked because the form is
|
|
157
|
+
* invalid") is NOT a thrown error — `submitError` stays whatever it
|
|
158
|
+
* was, and the returned promise resolves with `{ ok: false }`.
|
|
159
|
+
*/
|
|
160
|
+
readonly submitError: ReadSignal<unknown>; /** Deep-merge a partial value into the form, batched. */
|
|
147
161
|
set(partial: DeepPartial<FormValue<S>>): void;
|
|
148
162
|
/**
|
|
149
163
|
* Re-seat the form's leaves from `partial` as their new initials —
|
|
@@ -154,7 +168,29 @@ type Form<S extends FormSchema> = {
|
|
|
154
168
|
resetWithInitial(partial: DeepPartial<FormValue<S>>): void; /** Reset every leaf to its initial value. */
|
|
155
169
|
reset(): void; /** Mark every leaf as touched (so error messages appear). */
|
|
156
170
|
markAllTouched(): void; /** Re-run every leaf's validators. Resolves with true if all leaves are valid. */
|
|
157
|
-
validate(): Promise<boolean>;
|
|
171
|
+
validate(): Promise<boolean>;
|
|
172
|
+
/**
|
|
173
|
+
* Run a submission. Pre-validates the form (unless `validateBeforeSubmit: false`),
|
|
174
|
+
* then calls `handler(value)`. Maintains `isSubmitting` / `submitCount` /
|
|
175
|
+
* `submitError`. Returns `{ ok, data?, error? }` — see `FormImpl.submit`
|
|
176
|
+
* for the full contract.
|
|
177
|
+
*/
|
|
178
|
+
submit(handler: (value: FormValue<S>) => unknown | Promise<unknown>, options?: {
|
|
179
|
+
validateBeforeSubmit?: boolean;
|
|
180
|
+
resetOnSuccess?: boolean;
|
|
181
|
+
onError?: 'rethrow' | 'capture';
|
|
182
|
+
}): Promise<{
|
|
183
|
+
ok: boolean;
|
|
184
|
+
data?: unknown;
|
|
185
|
+
error?: unknown;
|
|
186
|
+
}>;
|
|
187
|
+
/**
|
|
188
|
+
* Pin externally-sourced errors on specific fields. Keys are dot-separated
|
|
189
|
+
* paths through nested forms / field arrays (numeric segments are array
|
|
190
|
+
* indices). Errors land in each field's `serverErrors` channel — kept
|
|
191
|
+
* separate from validator output and auto-cleared on the next user write.
|
|
192
|
+
*/
|
|
193
|
+
setErrors(errors: Record<string, ReadonlyArray<string>>): void; /** Idempotent. Called by the owning controller's dispose. */
|
|
158
194
|
dispose(): void;
|
|
159
195
|
};
|
|
160
196
|
/**
|
|
@@ -215,6 +251,13 @@ type AsyncState<T> = {
|
|
|
215
251
|
refetch: () => Promise<T>;
|
|
216
252
|
reset: () => void;
|
|
217
253
|
firstValue: () => Promise<T>;
|
|
254
|
+
/**
|
|
255
|
+
* Alias of `firstValue()` — clearer name for Suspense / `React.use(...)`
|
|
256
|
+
* use cases. Resolves with `data` on first success (short-circuits if
|
|
257
|
+
* already settled), rejects with `error` on the first failure. Use this
|
|
258
|
+
* to suspend a React tree until the query lands its first value.
|
|
259
|
+
*/
|
|
260
|
+
promise: () => Promise<T>;
|
|
218
261
|
};
|
|
219
262
|
/**
|
|
220
263
|
* Returned by `query.setData(...)` or `localCache.setData(...)`. Used by
|
|
@@ -324,8 +367,12 @@ type Query<Args extends unknown[], T> = {
|
|
|
324
367
|
type QuerySubscription<T> = AsyncState<T>;
|
|
325
368
|
/**
|
|
326
369
|
* Options passed to `ctx.use(query, opts)` to control the subscription
|
|
327
|
-
* (reactive key, enabled-gating). The `key` thunk reads signals —
|
|
328
|
-
* when they change re-keys the subscription.
|
|
370
|
+
* (reactive key, enabled-gating). The `key` thunk reads signals —
|
|
371
|
+
* re-evaluating when they change re-keys the subscription.
|
|
372
|
+
*
|
|
373
|
+
* A `select` projection that maps the underlying data shape to a view
|
|
374
|
+
* shape is accepted via a dedicated overload on `Ctx.use` rather than this
|
|
375
|
+
* options bag — the overload threads `T → U` types through cleanly.
|
|
329
376
|
*/
|
|
330
377
|
type UseOptions<Args extends readonly unknown[]> = {
|
|
331
378
|
key?: () => Args;
|
|
@@ -768,6 +815,10 @@ interface AmbientDeps {
|
|
|
768
815
|
* `ctx.field(initial, validators?)`. Spec §8, §20.7.
|
|
769
816
|
*/
|
|
770
817
|
type Field<T> = ReadSignal<T> & {
|
|
818
|
+
/**
|
|
819
|
+
* All errors currently surfaced on this field — validator errors first,
|
|
820
|
+
* server errors after. See `setErrors` for the server-error channel.
|
|
821
|
+
*/
|
|
771
822
|
errors: ReadSignal<string[]>;
|
|
772
823
|
isValid: ReadSignal<boolean>;
|
|
773
824
|
isDirty: ReadSignal<boolean>;
|
|
@@ -784,7 +835,16 @@ type Field<T> = ReadSignal<T> & {
|
|
|
784
835
|
setAsInitial(value: T): void;
|
|
785
836
|
reset(): void;
|
|
786
837
|
markTouched(): void;
|
|
787
|
-
revalidate(): Promise<boolean>;
|
|
838
|
+
revalidate(): Promise<boolean>;
|
|
839
|
+
/**
|
|
840
|
+
* Pin externally-sourced errors on the field — typically server-side
|
|
841
|
+
* validation results returned from a failed submit. These errors live in
|
|
842
|
+
* a separate channel from validator output, so a re-run of local
|
|
843
|
+
* validators (triggered by a new value or `revalidate()`) does NOT clear
|
|
844
|
+
* them. They're cleared automatically the next time the user writes to
|
|
845
|
+
* the field (via `set`), or explicitly via `setErrors([])` / `reset()`.
|
|
846
|
+
*/
|
|
847
|
+
setErrors(errors: ReadonlyArray<string>): void; /** Idempotent. Called by the owning controller's dispose. */
|
|
788
848
|
dispose(): void;
|
|
789
849
|
};
|
|
790
850
|
/**
|
|
@@ -888,8 +948,13 @@ type Ctx<TDeps = AmbientDeps> = {
|
|
|
888
948
|
keepPreviousData?: boolean;
|
|
889
949
|
initialData?: T | undefined;
|
|
890
950
|
}): LocalCache<T>;
|
|
891
|
-
use<Args extends unknown[], T>(source: Query<Args, T>,
|
|
892
|
-
|
|
951
|
+
use<Args extends unknown[], T, U>(source: Query<Args, T>, options: {
|
|
952
|
+
key?: () => readonly [...Args];
|
|
953
|
+
enabled?: () => boolean;
|
|
954
|
+
select: (data: T) => U;
|
|
955
|
+
}): QuerySubscription<U>;
|
|
956
|
+
use<Args extends unknown[], T>(source: Query<Args, T>, keyOrOptions?: (() => readonly [...Args]) | UseOptions<Args>): QuerySubscription<T>;
|
|
957
|
+
use<Args extends unknown[], TPage, TItem>(source: InfiniteQuery<Args, TPage, TItem>, keyOrOptions?: (() => readonly [...Args]) | UseOptions<Args>): InfiniteQuerySubscription<TPage, TItem>;
|
|
893
958
|
mutation<V, R>(spec: MutationSpec<V, R>): Mutation<V, R>;
|
|
894
959
|
emitter<T = void>(): Emitter<T>;
|
|
895
960
|
field<T>(initial: T, validators?: ReadonlyArray<Validator<T>>): Field<T>;
|
|
@@ -1015,4 +1080,4 @@ type Root<Api> = Api & {
|
|
|
1015
1080
|
};
|
|
1016
1081
|
//#endregion
|
|
1017
1082
|
export { FormErrors as $, DebugEvent as A, QuerySpec as B, SetDataEvent as C, MutationSpec as D, MutationConcurrency as E, AsyncStatus as F, UseOptions as G, RetryDelay as H, DehydratedEntry as I, FieldArrayItemErrors as J, DeepPartial as K, DehydratedState as L, InfiniteQuerySpec as M, InfiniteQuerySubscription as N, DebugBus as O, AsyncState as P, Form as Q, LocalCache as R, RegisteredQuery as S, Mutation as T, RetryPolicy as U, QuerySubscription as V, Snapshot as W, FieldArrayValidator as X, FieldArrayOptions as Y, FieldArrayValue as Z, defineScope as _, CollectionFactoryResult as a, Validator as at, QueryClientPlugin as b, CtrlApi as c, Signal as ct, Field as d, EmitterErrorReporter as dt, FormOptions as et, LazyChild as f, createEmitter as ft, ScopeOptions as g, Scope as h, CollectionFactoryOptions as i, ItemInitial as it, InfiniteQuery as j, DebugCacheEntry as k, CtrlProps as l, ErrorContext as lt, RootOptions as m, Collection as n, FormValidator as nt, CollectionHomogeneousOptions as o, Computed as ot, Root as p, FieldArray as q, CollectionFactoryApi as r, FormValue as rt, ControllerDef as s, ReadSignal as st, AmbientDeps as t, FormSchema as tt, Ctx as u, Emitter as ut, GcEvent as v, lookupRegisteredQuery as w, QueryClientPluginApi as x, InvalidateEvent as y, Query as z };
|
|
1018
|
-
//# sourceMappingURL=types-
|
|
1083
|
+
//# sourceMappingURL=types-BCf2nB2N.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types-BCf2nB2N.d.mts","names":[],"sources":["../src/emitter.ts","../src/errors.ts","../src/signals/types.ts","../src/forms/types.ts","../src/forms/form-types.ts","../src/query/types.ts","../src/query/infinite.ts","../src/devtools.ts","../src/query/mutation.ts","../src/query/plugin.ts","../src/scope.ts","../src/controller/types.ts"],"mappings":"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"}
|
|
@@ -143,7 +143,21 @@ type Form<S extends FormSchema> = {
|
|
|
143
143
|
readonly isValid: ReadSignal<boolean>;
|
|
144
144
|
readonly isDirty: ReadSignal<boolean>;
|
|
145
145
|
readonly touched: ReadSignal<boolean>;
|
|
146
|
-
readonly isValidating: ReadSignal<boolean>;
|
|
146
|
+
readonly isValidating: ReadSignal<boolean>;
|
|
147
|
+
/**
|
|
148
|
+
* `true` while a `submit(...)` is in flight. Clears when the handler
|
|
149
|
+
* resolves, throws, or pre-submit validation fails.
|
|
150
|
+
*/
|
|
151
|
+
readonly isSubmitting: ReadSignal<boolean>; /** Number of times `submit(...)` has been called. Bumps before the handler runs. */
|
|
152
|
+
readonly submitCount: ReadSignal<number>;
|
|
153
|
+
/**
|
|
154
|
+
* The thrown value from the most recent failed submission, if any.
|
|
155
|
+
* Cleared at the start of each new `submit(...)` call and on `reset()`.
|
|
156
|
+
* Note that a validation failure ("submit blocked because the form is
|
|
157
|
+
* invalid") is NOT a thrown error — `submitError` stays whatever it
|
|
158
|
+
* was, and the returned promise resolves with `{ ok: false }`.
|
|
159
|
+
*/
|
|
160
|
+
readonly submitError: ReadSignal<unknown>; /** Deep-merge a partial value into the form, batched. */
|
|
147
161
|
set(partial: DeepPartial<FormValue<S>>): void;
|
|
148
162
|
/**
|
|
149
163
|
* Re-seat the form's leaves from `partial` as their new initials —
|
|
@@ -154,7 +168,29 @@ type Form<S extends FormSchema> = {
|
|
|
154
168
|
resetWithInitial(partial: DeepPartial<FormValue<S>>): void; /** Reset every leaf to its initial value. */
|
|
155
169
|
reset(): void; /** Mark every leaf as touched (so error messages appear). */
|
|
156
170
|
markAllTouched(): void; /** Re-run every leaf's validators. Resolves with true if all leaves are valid. */
|
|
157
|
-
validate(): Promise<boolean>;
|
|
171
|
+
validate(): Promise<boolean>;
|
|
172
|
+
/**
|
|
173
|
+
* Run a submission. Pre-validates the form (unless `validateBeforeSubmit: false`),
|
|
174
|
+
* then calls `handler(value)`. Maintains `isSubmitting` / `submitCount` /
|
|
175
|
+
* `submitError`. Returns `{ ok, data?, error? }` — see `FormImpl.submit`
|
|
176
|
+
* for the full contract.
|
|
177
|
+
*/
|
|
178
|
+
submit(handler: (value: FormValue<S>) => unknown | Promise<unknown>, options?: {
|
|
179
|
+
validateBeforeSubmit?: boolean;
|
|
180
|
+
resetOnSuccess?: boolean;
|
|
181
|
+
onError?: 'rethrow' | 'capture';
|
|
182
|
+
}): Promise<{
|
|
183
|
+
ok: boolean;
|
|
184
|
+
data?: unknown;
|
|
185
|
+
error?: unknown;
|
|
186
|
+
}>;
|
|
187
|
+
/**
|
|
188
|
+
* Pin externally-sourced errors on specific fields. Keys are dot-separated
|
|
189
|
+
* paths through nested forms / field arrays (numeric segments are array
|
|
190
|
+
* indices). Errors land in each field's `serverErrors` channel — kept
|
|
191
|
+
* separate from validator output and auto-cleared on the next user write.
|
|
192
|
+
*/
|
|
193
|
+
setErrors(errors: Record<string, ReadonlyArray<string>>): void; /** Idempotent. Called by the owning controller's dispose. */
|
|
158
194
|
dispose(): void;
|
|
159
195
|
};
|
|
160
196
|
/**
|
|
@@ -215,6 +251,13 @@ type AsyncState<T> = {
|
|
|
215
251
|
refetch: () => Promise<T>;
|
|
216
252
|
reset: () => void;
|
|
217
253
|
firstValue: () => Promise<T>;
|
|
254
|
+
/**
|
|
255
|
+
* Alias of `firstValue()` — clearer name for Suspense / `React.use(...)`
|
|
256
|
+
* use cases. Resolves with `data` on first success (short-circuits if
|
|
257
|
+
* already settled), rejects with `error` on the first failure. Use this
|
|
258
|
+
* to suspend a React tree until the query lands its first value.
|
|
259
|
+
*/
|
|
260
|
+
promise: () => Promise<T>;
|
|
218
261
|
};
|
|
219
262
|
/**
|
|
220
263
|
* Returned by `query.setData(...)` or `localCache.setData(...)`. Used by
|
|
@@ -324,8 +367,12 @@ type Query<Args extends unknown[], T> = {
|
|
|
324
367
|
type QuerySubscription<T> = AsyncState<T>;
|
|
325
368
|
/**
|
|
326
369
|
* Options passed to `ctx.use(query, opts)` to control the subscription
|
|
327
|
-
* (reactive key, enabled-gating). The `key` thunk reads signals —
|
|
328
|
-
* when they change re-keys the subscription.
|
|
370
|
+
* (reactive key, enabled-gating). The `key` thunk reads signals —
|
|
371
|
+
* re-evaluating when they change re-keys the subscription.
|
|
372
|
+
*
|
|
373
|
+
* A `select` projection that maps the underlying data shape to a view
|
|
374
|
+
* shape is accepted via a dedicated overload on `Ctx.use` rather than this
|
|
375
|
+
* options bag — the overload threads `T → U` types through cleanly.
|
|
329
376
|
*/
|
|
330
377
|
type UseOptions<Args extends readonly unknown[]> = {
|
|
331
378
|
key?: () => Args;
|
|
@@ -768,6 +815,10 @@ interface AmbientDeps {
|
|
|
768
815
|
* `ctx.field(initial, validators?)`. Spec §8, §20.7.
|
|
769
816
|
*/
|
|
770
817
|
type Field<T> = ReadSignal<T> & {
|
|
818
|
+
/**
|
|
819
|
+
* All errors currently surfaced on this field — validator errors first,
|
|
820
|
+
* server errors after. See `setErrors` for the server-error channel.
|
|
821
|
+
*/
|
|
771
822
|
errors: ReadSignal<string[]>;
|
|
772
823
|
isValid: ReadSignal<boolean>;
|
|
773
824
|
isDirty: ReadSignal<boolean>;
|
|
@@ -784,7 +835,16 @@ type Field<T> = ReadSignal<T> & {
|
|
|
784
835
|
setAsInitial(value: T): void;
|
|
785
836
|
reset(): void;
|
|
786
837
|
markTouched(): void;
|
|
787
|
-
revalidate(): Promise<boolean>;
|
|
838
|
+
revalidate(): Promise<boolean>;
|
|
839
|
+
/**
|
|
840
|
+
* Pin externally-sourced errors on the field — typically server-side
|
|
841
|
+
* validation results returned from a failed submit. These errors live in
|
|
842
|
+
* a separate channel from validator output, so a re-run of local
|
|
843
|
+
* validators (triggered by a new value or `revalidate()`) does NOT clear
|
|
844
|
+
* them. They're cleared automatically the next time the user writes to
|
|
845
|
+
* the field (via `set`), or explicitly via `setErrors([])` / `reset()`.
|
|
846
|
+
*/
|
|
847
|
+
setErrors(errors: ReadonlyArray<string>): void; /** Idempotent. Called by the owning controller's dispose. */
|
|
788
848
|
dispose(): void;
|
|
789
849
|
};
|
|
790
850
|
/**
|
|
@@ -888,8 +948,13 @@ type Ctx<TDeps = AmbientDeps> = {
|
|
|
888
948
|
keepPreviousData?: boolean;
|
|
889
949
|
initialData?: T | undefined;
|
|
890
950
|
}): LocalCache<T>;
|
|
891
|
-
use<Args extends unknown[], T>(source: Query<Args, T>,
|
|
892
|
-
|
|
951
|
+
use<Args extends unknown[], T, U>(source: Query<Args, T>, options: {
|
|
952
|
+
key?: () => readonly [...Args];
|
|
953
|
+
enabled?: () => boolean;
|
|
954
|
+
select: (data: T) => U;
|
|
955
|
+
}): QuerySubscription<U>;
|
|
956
|
+
use<Args extends unknown[], T>(source: Query<Args, T>, keyOrOptions?: (() => readonly [...Args]) | UseOptions<Args>): QuerySubscription<T>;
|
|
957
|
+
use<Args extends unknown[], TPage, TItem>(source: InfiniteQuery<Args, TPage, TItem>, keyOrOptions?: (() => readonly [...Args]) | UseOptions<Args>): InfiniteQuerySubscription<TPage, TItem>;
|
|
893
958
|
mutation<V, R>(spec: MutationSpec<V, R>): Mutation<V, R>;
|
|
894
959
|
emitter<T = void>(): Emitter<T>;
|
|
895
960
|
field<T>(initial: T, validators?: ReadonlyArray<Validator<T>>): Field<T>;
|
|
@@ -1015,4 +1080,4 @@ type Root<Api> = Api & {
|
|
|
1015
1080
|
};
|
|
1016
1081
|
//#endregion
|
|
1017
1082
|
export { FormErrors as $, DebugEvent as A, QuerySpec as B, SetDataEvent as C, MutationSpec as D, MutationConcurrency as E, AsyncStatus as F, UseOptions as G, RetryDelay as H, DehydratedEntry as I, FieldArrayItemErrors as J, DeepPartial as K, DehydratedState as L, InfiniteQuerySpec as M, InfiniteQuerySubscription as N, DebugBus as O, AsyncState as P, Form as Q, LocalCache as R, RegisteredQuery as S, Mutation as T, RetryPolicy as U, QuerySubscription as V, Snapshot as W, FieldArrayValidator as X, FieldArrayOptions as Y, FieldArrayValue as Z, defineScope as _, CollectionFactoryResult as a, Validator as at, QueryClientPlugin as b, CtrlApi as c, Signal as ct, Field as d, EmitterErrorReporter as dt, FormOptions as et, LazyChild as f, createEmitter as ft, ScopeOptions as g, Scope as h, CollectionFactoryOptions as i, ItemInitial as it, InfiniteQuery as j, DebugCacheEntry as k, CtrlProps as l, ErrorContext as lt, RootOptions as m, Collection as n, FormValidator as nt, CollectionHomogeneousOptions as o, Computed as ot, Root as p, FieldArray as q, CollectionFactoryApi as r, FormValue as rt, ControllerDef as s, ReadSignal as st, AmbientDeps as t, FormSchema as tt, Ctx as u, Emitter as ut, GcEvent as v, lookupRegisteredQuery as w, QueryClientPluginApi as x, InvalidateEvent as y, Query as z };
|
|
1018
|
-
//# sourceMappingURL=types-
|
|
1083
|
+
//# sourceMappingURL=types-Ijeun3qo.d.cts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types-Ijeun3qo.d.cts","names":[],"sources":["../src/emitter.ts","../src/errors.ts","../src/signals/types.ts","../src/forms/types.ts","../src/forms/form-types.ts","../src/query/types.ts","../src/query/infinite.ts","../src/devtools.ts","../src/query/mutation.ts","../src/query/plugin.ts","../src/scope.ts","../src/controller/types.ts"],"mappings":"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"}
|