@paragrav/rhf-utils 0.0.35 → 0.0.37

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.
Files changed (33) hide show
  1. package/dist/esm/form/context/group/FormGroupContextProvider.mjs +30 -0
  2. package/dist/esm/form/context/group/index.mjs +11 -0
  3. package/dist/esm/form/context/group/useFormGroupChildIsMountedTracker.mjs +16 -0
  4. package/dist/esm/form/context/group/useFormGroupChildIsSubmittingTracker.mjs +12 -0
  5. package/dist/esm/form/context/group/useFormGroupIsAnyBusy.mjs +8 -0
  6. package/dist/esm/form/context/group/useFormGroupIsChildBusy.mjs +8 -0
  7. package/dist/esm/form/context/group/useFormGroupIsParentBusy.mjs +8 -0
  8. package/dist/esm/form/context/group/useFormGroupParentTracker.mjs +12 -0
  9. package/dist/esm/form/useFormIsBusy.mjs +5 -6
  10. package/dist/esm/main.mjs +44 -36
  11. package/dist/types/errors/flat/types.d.ts +10 -0
  12. package/dist/types/errors/root/getRootFlatFieldErrors.d.ts +1 -1
  13. package/dist/types/form/Form.d.ts +3 -2
  14. package/dist/types/form/FormWithProvider.d.ts +13 -0
  15. package/dist/types/form/context/FormProvider.d.ts +2 -2
  16. package/dist/types/form/context/group/FormGroupContextProvider.d.ts +5 -0
  17. package/dist/types/form/context/group/index.d.ts +13 -0
  18. package/dist/types/form/context/group/useAsFormGroupParent.d.ts +7 -0
  19. package/dist/types/form/context/group/useFormGroupChildIsMountedTracker.d.ts +2 -0
  20. package/dist/types/form/context/group/useFormGroupChildIsSubmittingTracker.d.ts +2 -0
  21. package/dist/types/form/context/group/useFormGroupIsAnyBusy.d.ts +2 -0
  22. package/dist/types/form/context/group/useFormGroupIsChildBusy.d.ts +2 -0
  23. package/dist/types/form/context/group/useFormGroupIsParentBusy.d.ts +2 -0
  24. package/dist/types/form/context/group/useFormGroupParentTracker.d.ts +7 -0
  25. package/dist/types/form/useForm.d.ts +5 -2
  26. package/dist/types/form/useFormOrParentIsBusy.d.ts +2 -0
  27. package/dist/types/main.d.ts +7 -3
  28. package/dist/types/utils/useToggle.d.ts +4 -0
  29. package/package.json +26 -10
  30. package/dist/esm/form/context/parent/FormParentContextProvider.mjs +0 -10
  31. package/dist/esm/form/context/parent/index.mjs +0 -6
  32. package/dist/esm/form/context/parent/useAsFormParentState.mjs +0 -14
  33. package/dist/esm/form/context/parent/useFormParentIsBusy.mjs +0 -8
@@ -0,0 +1,30 @@
1
+ import { jsx as y } from "react/jsx-runtime";
2
+ import s from "react";
3
+ import { _FormGroupContextProvider as m } from "./index.mjs";
4
+ const B = ({ children: o }) => {
5
+ const [t, u] = s.useState([]), n = t.length, a = s.useCallback((e, l) => {
6
+ u(
7
+ (r) => l ? (
8
+ // add to array
9
+ [...r, e]
10
+ ) : (
11
+ // remove from array
12
+ r.filter((c) => c !== e)
13
+ )
14
+ );
15
+ }, []), [d, i] = s.useState(!1);
16
+ return /* @__PURE__ */ y(m, { value: {
17
+ children: {
18
+ busyCount: n,
19
+ busyIds: t,
20
+ setBusyId: a
21
+ },
22
+ parent: {
23
+ isBusy: d,
24
+ setIsBusy: i
25
+ }
26
+ }, children: o });
27
+ }, h = B;
28
+ export {
29
+ h as default
30
+ };
@@ -0,0 +1,11 @@
1
+ import o from "../../../utils/createContext.mjs";
2
+ const [
3
+ t,
4
+ e,
5
+ m
6
+ ] = o();
7
+ export {
8
+ m as _FormGroupContextProvider,
9
+ e as _useFormGroupContext,
10
+ t as _useFormGroupContextMaybe
11
+ };
@@ -0,0 +1,16 @@
1
+ import e from "react";
2
+ import { useFormContext as u } from "react-hook-form";
3
+ import { _useFormGroupContext as n } from "./index.mjs";
4
+ const c = () => {
5
+ u();
6
+ const { setBusyId: r } = n().children, t = e.useId();
7
+ e.useEffect(() => {
8
+ const o = (s) => {
9
+ r(t, s);
10
+ };
11
+ return o(!0), () => o(!1);
12
+ }, []);
13
+ }, i = c;
14
+ export {
15
+ i as default
16
+ };
@@ -0,0 +1,12 @@
1
+ import s from "react";
2
+ import { useFormState as e } from "react-hook-form";
3
+ import { _useFormGroupContext as i } from "./index.mjs";
4
+ const u = () => {
5
+ const { isSubmitting: t } = e(), { setBusyId: o } = i().children, r = s.useId();
6
+ s.useEffect(() => {
7
+ o(r, t);
8
+ }, [t, r, o]);
9
+ }, d = u;
10
+ export {
11
+ d as default
12
+ };
@@ -0,0 +1,8 @@
1
+ import { _useFormGroupContextMaybe as s } from "./index.mjs";
2
+ const r = () => {
3
+ const o = s();
4
+ return !!(o != null && o.children.busyCount) || !!(o != null && o.parent.isBusy);
5
+ }, e = r;
6
+ export {
7
+ e as default
8
+ };
@@ -0,0 +1,8 @@
1
+ import { _useFormGroupContextMaybe as r } from "./index.mjs";
2
+ const s = () => {
3
+ const o = r();
4
+ return !!(o != null && o.children.busyCount);
5
+ }, e = s;
6
+ export {
7
+ e as default
8
+ };
@@ -0,0 +1,8 @@
1
+ import { _useFormGroupContextMaybe as o } from "./index.mjs";
2
+ const s = () => {
3
+ const r = o();
4
+ return !!(r != null && r.parent.isBusy);
5
+ }, t = s;
6
+ export {
7
+ t as default
8
+ };
@@ -0,0 +1,12 @@
1
+ import s from "react";
2
+ import t from "../../useFormIsBusy.mjs";
3
+ import { _useFormGroupContext as e } from "./index.mjs";
4
+ const u = () => {
5
+ const r = t(), { setIsBusy: o } = e().parent;
6
+ s.useEffect(() => {
7
+ o(r);
8
+ }, [o, r]);
9
+ }, n = u;
10
+ export {
11
+ n as default
12
+ };
@@ -1,9 +1,8 @@
1
- import { useFormState as r } from "react-hook-form";
2
- import e from "./context/parent/useFormParentIsBusy.mjs";
3
- const m = () => {
4
- const { isSubmitting: t, isLoading: o } = r(), s = e();
5
- return !!(t || o || s);
1
+ import { useFormState as s } from "react-hook-form";
2
+ const r = () => {
3
+ const { isSubmitting: o, isLoading: t } = s();
4
+ return !!(o || t);
6
5
  };
7
6
  export {
8
- m as default
7
+ r as default
9
8
  };
package/dist/esm/main.mjs CHANGED
@@ -1,48 +1,56 @@
1
1
  import { default as e } from "./devtool/LazyDevTool.mjs";
2
2
  import { default as s } from "./errors/context/index.mjs";
3
3
  import { default as u } from "./errors/context/provider.mjs";
4
- import { default as m } from "./errors/message/FormErrorMessage.mjs";
4
+ import { default as f } from "./errors/message/FormErrorMessage.mjs";
5
5
  import { default as d } from "./errors/message/FormErrorMessageByPath.mjs";
6
- import { default as p } from "./errors/nonfield/FormNonFieldErrorMarker.mjs";
6
+ import { default as F } from "./errors/nonfield/FormNonFieldErrorMarker.mjs";
7
7
  import { default as n } from "./errors/nonfield/FormNonFieldErrorMarkerHtmlAttribute.mjs";
8
- import { default as i } from "./errors/orphan/useFormHasOrphanAndNoFieldErrors.mjs";
9
- import { default as b } from "./errors/orphan/useOrphanFormErrorsMemo.mjs";
10
- import { default as M } from "./errors/orphan/useOrphanFormErrorsToConsole.mjs";
11
- import { default as P } from "./errors/root/useRootFormFieldErrorsMemo.mjs";
12
- import { default as O } from "./errors/useFormErrorConsoleDebug.mjs";
13
- import { default as h } from "./errors/useFormErrorsEffect.mjs";
14
- import { default as R } from "./errors/useFormErrorsIfAny.mjs";
15
- import { default as B } from "./errors/useFormErrorsMemo.mjs";
16
- import { default as N } from "./errors/useFormRequestSubmit.mjs";
17
- import { default as H } from "./form/context/parent/FormParentContextProvider.mjs";
18
- import { default as T } from "./form/context/parent/useAsFormParentState.mjs";
19
- import { default as z } from "./form/context/parent/useFormParentIsBusy.mjs";
20
- import { default as j } from "./form/utils/getSubmitterButtonData.mjs";
21
- import { default as G } from "./submit/useFormOnSubmitSuccessful.mjs";
22
- import { default as K } from "./submit/useFormOnSubmitSuccessfulAndReset.mjs";
23
- import { default as U } from "./submit/useResetFormOnSubmitSuccessful.mjs";
8
+ import { default as E } from "./errors/orphan/useFormHasOrphanAndNoFieldErrors.mjs";
9
+ import { default as S } from "./errors/orphan/useOrphanFormErrorsMemo.mjs";
10
+ import { default as C } from "./errors/orphan/useOrphanFormErrorsToConsole.mjs";
11
+ import { default as h } from "./errors/root/useRootFormFieldErrorsMemo.mjs";
12
+ import { default as G } from "./errors/useFormErrorConsoleDebug.mjs";
13
+ import { default as I } from "./errors/useFormErrorsEffect.mjs";
14
+ import { default as k } from "./errors/useFormErrorsIfAny.mjs";
15
+ import { default as O } from "./errors/useFormErrorsMemo.mjs";
16
+ import { default as T } from "./errors/useFormRequestSubmit.mjs";
17
+ import { default as v } from "./form/context/group/FormGroupContextProvider.mjs";
18
+ import { default as N } from "./form/context/group/useFormGroupChildIsMountedTracker.mjs";
19
+ import { default as q } from "./form/context/group/useFormGroupChildIsSubmittingTracker.mjs";
20
+ import { default as L } from "./form/context/group/useFormGroupIsAnyBusy.mjs";
21
+ import { default as w } from "./form/context/group/useFormGroupIsChildBusy.mjs";
22
+ import { default as K } from "./form/context/group/useFormGroupIsParentBusy.mjs";
23
+ import { default as U } from "./form/context/group/useFormGroupParentTracker.mjs";
24
+ import { default as W } from "./form/utils/getSubmitterButtonData.mjs";
25
+ import { default as Y } from "./submit/useFormOnSubmitSuccessful.mjs";
26
+ import { default as _ } from "./submit/useFormOnSubmitSuccessfulAndReset.mjs";
27
+ import { default as rr } from "./submit/useResetFormOnSubmitSuccessful.mjs";
24
28
  export {
25
- m as FormErrorMessage,
29
+ f as FormErrorMessage,
26
30
  d as FormErrorMessageByPath,
27
31
  u as FormErrorsFlatContextProvider,
28
- p as FormNonFieldErrorMarker,
32
+ v as FormGroupContextProvider,
33
+ F as FormNonFieldErrorMarker,
29
34
  n as FormNonFieldErrorMarkerHtmlAttribute,
30
- H as FormParentContextProvider,
31
35
  e as LazyDevTool,
32
- j as getSubmitterButtonData,
33
- T as useAsFormParentState,
34
- O as useFormErrorConsoleDebug,
35
- h as useFormErrorsEffect,
36
+ W as getSubmitterButtonData,
37
+ G as useFormErrorConsoleDebug,
38
+ I as useFormErrorsEffect,
36
39
  s as useFormErrorsFlatContext,
37
- R as useFormErrorsIfAny,
38
- B as useFormErrorsMemo,
39
- i as useFormHasOrphanAndNoFieldErrors,
40
- G as useFormOnSubmitSuccessful,
41
- K as useFormOnSubmitSuccessfulAndReset,
42
- z as useFormParentIsBusy,
43
- N as useFormRequestSubmit,
44
- b as useOrphanFormErrorsMemo,
45
- M as useOrphanFormErrorsToConsole,
46
- U as useResetFormAfterSubmitSuccessful,
47
- P as useRootFormFieldErrorsMemo
40
+ k as useFormErrorsIfAny,
41
+ O as useFormErrorsMemo,
42
+ N as useFormGroupChildIsMountedTracker,
43
+ q as useFormGroupChildIsSubmittingTracker,
44
+ L as useFormGroupIsAnyBusy,
45
+ w as useFormGroupIsChildBusy,
46
+ K as useFormGroupIsParentBusy,
47
+ U as useFormGroupParentTracker,
48
+ E as useFormHasOrphanAndNoFieldErrors,
49
+ Y as useFormOnSubmitSuccessful,
50
+ _ as useFormOnSubmitSuccessfulAndReset,
51
+ T as useFormRequestSubmit,
52
+ S as useOrphanFormErrorsMemo,
53
+ C as useOrphanFormErrorsToConsole,
54
+ rr as useResetFormAfterSubmitSuccessful,
55
+ h as useRootFormFieldErrorsMemo
48
56
  };
@@ -1,3 +1,13 @@
1
1
  import { FieldError } from 'react-hook-form';
2
2
 
3
+ /**
4
+ * Flattened field errors object.
5
+ *
6
+ * @example
7
+ * ```ts
8
+ * {
9
+ * 'address.street': FieldError
10
+ * }
11
+ * ```
12
+ */
3
13
  export type FlatFieldErrors = Record<string, FieldError>;
@@ -2,7 +2,7 @@ import { FlatFieldErrors } from '../flat/types';
2
2
  import { FieldErrors } from 'react-hook-form';
3
3
 
4
4
  /**
5
- * Pending.
5
+ * Generate {@link FlatFieldErrors} object from {@link FieldErrors}.
6
6
  */
7
7
  declare const getRootFlatFieldErrors: (errors: FieldErrors) => FlatFieldErrors;
8
8
  export default getRootFlatFieldErrors;
@@ -1,7 +1,7 @@
1
1
  import { FormBaseProps } from './FormBase';
2
- import { LazyDevToolProps } from '../devtool/LazyDevTool';
3
2
  import { FieldValues, SubmitErrorHandler, UseFormReturn } from 'react-hook-form';
4
3
  import { default as React } from 'react';
4
+ import { DevtoolUIProps } from '@hookform/devtools/dist/devToolUI';
5
5
 
6
6
  export type FormProps<TFieldValues extends FieldValues, TTransformedValues extends FieldValues> = Omit<FormBaseProps, 'onSubmit'> & {
7
7
  isDev: boolean;
@@ -12,8 +12,9 @@ export type FormProps<TFieldValues extends FieldValues, TTransformedValues exten
12
12
  /** Submit handler when form is invalid. */
13
13
  onSubmitInvalid?: SubmitErrorHandler<TFieldValues>;
14
14
  options?: {
15
+ stopSubmitPropagation?: boolean;
15
16
  disableEmptyRootError?: boolean;
16
- devTool?: LazyDevToolProps | 'disabled';
17
+ devTool?: DevtoolUIProps | 'disabled';
17
18
  };
18
19
  className?: string;
19
20
  };
@@ -0,0 +1,13 @@
1
+ import { UseFormProps } from './useForm';
2
+ import { FieldValues } from 'react-hook-form';
3
+
4
+ export type FormWithProvider<TFieldValues extends FieldValues, TTransformedValues extends FieldValues> = React.PropsWithChildren<UseFormProps<TFieldValues, TTransformedValues>>;
5
+ /**
6
+ * {@link FormProvider} (and utils) with immediate descendent {@link Form}.
7
+ * (Syntactic sugar for {@link useForm}. Use this for most applications.)
8
+ *
9
+ * Use {@link useForm} if you need to specific nesting hierarchy.
10
+ * (e.g., wrapping `<tr>` with provider and nesting `<form>` within `<td>` to appease HTML rules.)
11
+ */
12
+ declare function FormWithProvider<TFieldValues extends FieldValues, TTransformedValues extends FieldValues>({ rhf, form, children }: FormWithProvider<TFieldValues, TTransformedValues>): import("react/jsx-runtime").JSX.Element;
13
+ export default FormWithProvider;
@@ -4,10 +4,10 @@ import { FieldValues, UseFormReturn } from 'react-hook-form';
4
4
 
5
5
  type Props<TFieldValues extends FieldValues, // input values
6
6
  TTransformedValues extends FieldValues> = React.PropsWithChildren<{
7
- ctx: UseFormReturn<TFieldValues, unknown, TTransformedValues>;
7
+ rhf: UseFormReturn<TFieldValues, unknown, TTransformedValues>;
8
8
  } & {
9
9
  form: FormProps<TFieldValues, TTransformedValues>;
10
10
  utils?: FormUtilsContextProviderProps;
11
11
  }>;
12
- declare function FormProvider<TFieldValues extends FieldValues, TTransformedValues extends FieldValues>({ ctx, form, utils, children }: Props<TFieldValues, TTransformedValues>): import("react/jsx-runtime").JSX.Element;
12
+ declare function FormProvider<TFieldValues extends FieldValues, TTransformedValues extends FieldValues>({ rhf, form, utils, children }: Props<TFieldValues, TTransformedValues>): import("react/jsx-runtime").JSX.Element;
13
13
  export default FormProvider;
@@ -0,0 +1,5 @@
1
+ import { default as React } from 'react';
2
+
3
+ type Props = React.PropsWithChildren;
4
+ declare const FormGroupContextProvider: React.FC<Props>;
5
+ export default FormGroupContextProvider;
@@ -0,0 +1,13 @@
1
+ /// <reference types="react" />
2
+ export type FormGroupContext = {
3
+ children: {
4
+ busyIds: string[];
5
+ busyCount: number;
6
+ setBusyId: (id: string, isBusy: boolean) => void;
7
+ };
8
+ parent: {
9
+ isBusy: boolean;
10
+ setIsBusy: (isBusy: boolean) => void;
11
+ };
12
+ };
13
+ export declare const _useFormGroupContextMaybe: () => FormGroupContext | undefined, _useFormGroupContext: () => FormGroupContext, _FormGroupContextProvider: import('react').Provider<FormGroupContext | undefined>;
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Connect specific form state as parent context.
3
+ *
4
+ * Requires usage of provider.
5
+ */
6
+ declare const useAsFormGroupParent: () => void;
7
+ export default useAsFormGroupParent;
@@ -0,0 +1,2 @@
1
+ declare const useFormGroupChildIsMountedTracker: () => void;
2
+ export default useFormGroupChildIsMountedTracker;
@@ -0,0 +1,2 @@
1
+ declare const useFormGroupChildIsSubmittingTracker: () => void;
2
+ export default useFormGroupChildIsSubmittingTracker;
@@ -0,0 +1,2 @@
1
+ declare const useFormGroupIsAnyBusy: () => boolean;
2
+ export default useFormGroupIsAnyBusy;
@@ -0,0 +1,2 @@
1
+ declare const useFormGroupIsChildBusy: () => boolean;
2
+ export default useFormGroupIsChildBusy;
@@ -0,0 +1,2 @@
1
+ declare const useFormGroupIsParentBusy: () => boolean;
2
+ export default useFormGroupIsParentBusy;
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Connect specific form state as parent context.
3
+ *
4
+ * Requires usage of provider.
5
+ */
6
+ declare const useFormGroupParentTracker: () => void;
7
+ export default useFormGroupParentTracker;
@@ -4,8 +4,11 @@ import { FieldValues, UseFormProps as RhfUseFormProps } from 'react-hook-form';
4
4
  import { default as React } from 'react';
5
5
 
6
6
  export type UseFormProps<TFieldValues extends FieldValues, TTransformedValues extends FieldValues> = {
7
+ /** {@link RhfUseFormProps} props for RHF's {@link useRhfForm}. */
7
8
  rhf: RhfUseFormProps<TFieldValues>;
8
- props: FormProps<TFieldValues, TTransformedValues>;
9
+ /** {@link FormProps} props for Form. */
10
+ form: FormProps<TFieldValues, TTransformedValues>;
11
+ /** {@link FormUtilsContextProviderProps} props for `FormUtilsContextProvider`. */
9
12
  utils?: FormUtilsContextProviderProps;
10
13
  };
11
14
  export type UseFormReturn = ReturnType<typeof useForm>;
@@ -18,7 +21,7 @@ export type UseFormReturn = ReturnType<typeof useForm>;
18
21
  * see https://caniuse.com/?search=form%20attribute
19
22
  * @returns Form provider and form.
20
23
  */
21
- export declare const useForm: <TFieldValues extends FieldValues, TTransformedValues extends FieldValues>({ rhf, props, utils, }: UseFormProps<TFieldValues, TTransformedValues>) => {
24
+ export declare const useForm: <TFieldValues extends FieldValues, TTransformedValues extends FieldValues>({ rhf, form, utils, }: UseFormProps<TFieldValues, TTransformedValues>) => {
22
25
  Provider: React.FC<{
23
26
  children?: React.ReactNode;
24
27
  }>;
@@ -0,0 +1,2 @@
1
+ declare const useFormOrParentIsBusy: () => boolean;
2
+ export default useFormOrParentIsBusy;
@@ -14,9 +14,13 @@ export { default as useFormErrorsEffect } from './errors/useFormErrorsEffect';
14
14
  export { default as useFormErrorsIfAny } from './errors/useFormErrorsIfAny';
15
15
  export { default as useFormErrorsMemo } from './errors/useFormErrorsMemo';
16
16
  export { default as useFormRequestSubmit } from './errors/useFormRequestSubmit';
17
- export { default as FormParentContextProvider } from './form/context/parent/FormParentContextProvider';
18
- export { default as useAsFormParentState } from './form/context/parent/useAsFormParentState';
19
- export { default as useFormParentIsBusy } from './form/context/parent/useFormParentIsBusy';
17
+ export { default as FormGroupContextProvider } from './form/context/group/FormGroupContextProvider';
18
+ export { default as useFormGroupChildIsMountedTracker } from './form/context/group/useFormGroupChildIsMountedTracker';
19
+ export { default as useFormGroupChildIsSubmittingTracker } from './form/context/group/useFormGroupChildIsSubmittingTracker';
20
+ export { default as useFormGroupIsAnyBusy } from './form/context/group/useFormGroupIsAnyBusy';
21
+ export { default as useFormGroupIsChildBusy } from './form/context/group/useFormGroupIsChildBusy';
22
+ export { default as useFormGroupIsParentBusy } from './form/context/group/useFormGroupIsParentBusy';
23
+ export { default as useFormGroupParentTracker } from './form/context/group/useFormGroupParentTracker';
20
24
  export { default as getSubmitterButtonData } from './form/utils/getSubmitterButtonData';
21
25
  export { default as useFormOnSubmitSuccessful } from './submit/useFormOnSubmitSuccessful';
22
26
  export { default as useFormOnSubmitSuccessfulAndReset } from './submit/useFormOnSubmitSuccessfulAndReset';
@@ -0,0 +1,4 @@
1
+ import { default as React } from 'react';
2
+
3
+ declare const useToggle: (defaultValue?: boolean) => [boolean, React.DispatchWithoutAction];
4
+ export default useToggle;
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@paragrav/rhf-utils",
3
3
  "author": "paragrav.dev",
4
4
  "license": "MIT",
5
- "version": "0.0.35",
5
+ "version": "0.0.37",
6
6
  "description": "Integration utilities for react-hook-form.",
7
7
  "type": "module",
8
8
  "sideEffects": false,
@@ -71,17 +71,33 @@
71
71
  "default": "./dist/esm/errors/root/useRootFormFieldErrors.mjs",
72
72
  "types": "./dist/types/errors/root/useRootFormFieldErrors.d.ts"
73
73
  },
74
- "./form/context/parent/FormParentContextProvider": {
75
- "default": "./dist/esm/form/context/parent/FormParentContextProvider.mjs",
76
- "types": "./dist/types/form/context/parent/FormParentContextProvider.d.ts"
74
+ "./form/context/group/FormGroupContextProvider": {
75
+ "default": "./dist/esm/form/context/group/FormGroupContextProvider.mjs",
76
+ "types": "./dist/types/form/context/group/FormGroupContextProvider.d.ts"
77
77
  },
78
- "./form/context/parent/useAsFormParentState": {
79
- "default": "./dist/esm/form/context/parent/useAsFormParentState.mjs",
80
- "types": "./dist/types/form/context/parent/useAsFormParentState.d.ts"
78
+ "./form/context/group/useFormGroupParentTracker": {
79
+ "default": "./dist/esm/form/context/group/useFormGroupParentTracker.mjs",
80
+ "types": "./dist/types/form/context/group/useFormGroupParentTracker.d.ts"
81
81
  },
82
- "./form/context/parent/useFormParentIsBusy": {
83
- "default": "./dist/esm/form/context/parent/useFormParentIsBusy.mjs",
84
- "types": "./dist/types/form/context/parent/useFormParentIsBusy.d.ts"
82
+ "./form/context/group/useFormGroupChildIsSubmittingTracker": {
83
+ "default": "./dist/esm/form/context/group/useFormGroupChildIsSubmittingTracker.mjs",
84
+ "types": "./dist/types/form/context/group/useFormGroupChildIsSubmittingTracker.d.ts"
85
+ },
86
+ "./form/context/group/useFormGroupChildIsMountedTracker": {
87
+ "default": "./dist/esm/form/context/group/useFormGroupChildIsMountedTracker.mjs",
88
+ "types": "./dist/types/form/context/group/useFormGroupChildIsMountedTracker.d.ts"
89
+ },
90
+ "./form/context/group/useFormGroupIsAnyBusy": {
91
+ "default": "./dist/esm/form/context/group/useFormGroupIsAnyBusy.mjs",
92
+ "types": "./dist/types/form/context/group/useFormGroupIsAnyBusy.d.ts"
93
+ },
94
+ "./form/context/group/useFormGroupIsChildBusy": {
95
+ "default": "./dist/esm/form/context/group/useFormGroupIsChildBusy.mjs",
96
+ "types": "./dist/types/form/context/group/useFormGroupIsChildBusy.d.ts"
97
+ },
98
+ "./form/context/group/useFormGroupIsParentBusy": {
99
+ "default": "./dist/esm/form/context/group/useFormGroupIsParentBusy.mjs",
100
+ "types": "./dist/types/form/context/group/useFormGroupIsParentBusy.d.ts"
85
101
  },
86
102
  "./form/context/utils/getSubmitterButtonData": {
87
103
  "default": "./dist/esm/form/utils/getSubmitterButtonData.mjs",
@@ -1,10 +0,0 @@
1
- import { jsx as e } from "react/jsx-runtime";
2
- import s from "react";
3
- import { _FormParentContextProvider as n } from "./index.mjs";
4
- const a = ({ children: t }) => {
5
- const [r, o] = s.useState(!1);
6
- return /* @__PURE__ */ e(n, { value: { isBusy: r, setIsBusy: o }, children: t });
7
- }, P = a;
8
- export {
9
- P as default
10
- };
@@ -1,6 +0,0 @@
1
- import t from "../../../utils/createContext.mjs";
2
- const [o, , r] = t();
3
- export {
4
- r as _FormParentContextProvider,
5
- o as _useFormParentContext
6
- };
@@ -1,14 +0,0 @@
1
- import o from "react";
2
- import r from "../../useFormIsBusy.mjs";
3
- import { _useFormParentContext as s } from "./index.mjs";
4
- const n = () => {
5
- const e = r(), t = s();
6
- if (!t)
7
- throw new Error("Parent context is not provided.");
8
- o.useEffect(() => {
9
- t.setIsBusy(e);
10
- }, [t, e]);
11
- }, c = n;
12
- export {
13
- c as default
14
- };
@@ -1,8 +0,0 @@
1
- import { _useFormParentContext as t } from "./index.mjs";
2
- const e = () => {
3
- var s;
4
- return (s = t()) == null ? void 0 : s.isBusy;
5
- }, r = e;
6
- export {
7
- r as default
8
- };