@rolster/react-forms 18.2.10 → 18.3.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.
Files changed (33) hide show
  1. package/dist/cjs/index.js +280 -198
  2. package/dist/cjs/index.js.map +1 -1
  3. package/dist/es/index.js +268 -182
  4. package/dist/es/index.js.map +1 -1
  5. package/dist/esm/form-array/form-array-control.hook.d.ts +24 -18
  6. package/dist/esm/form-array/form-array-control.hook.js +32 -26
  7. package/dist/esm/form-array/form-array-control.hook.js.map +1 -1
  8. package/dist/esm/form-array/form-array-group.hook.d.ts +10 -9
  9. package/dist/esm/form-array/form-array-group.hook.js +33 -12
  10. package/dist/esm/form-array/form-array-group.hook.js.map +1 -1
  11. package/dist/esm/form-array/form-array.hook.d.ts +5 -11
  12. package/dist/esm/form-array/form-array.hook.js +45 -55
  13. package/dist/esm/form-array/form-array.hook.js.map +1 -1
  14. package/dist/esm/form-array/index.d.ts +2 -2
  15. package/dist/esm/form-array/index.js +2 -2
  16. package/dist/esm/form-array/index.js.map +1 -1
  17. package/dist/esm/form-control.hook.d.ts +16 -11
  18. package/dist/esm/form-control.hook.js +47 -48
  19. package/dist/esm/form-control.hook.js.map +1 -1
  20. package/dist/esm/form-group.hook.d.ts +3 -3
  21. package/dist/esm/form-group.hook.js +17 -17
  22. package/dist/esm/form-group.hook.js.map +1 -1
  23. package/dist/esm/form-ref.hook.d.ts +10 -10
  24. package/dist/esm/form-ref.hook.js +21 -17
  25. package/dist/esm/form-ref.hook.js.map +1 -1
  26. package/dist/esm/index.d.ts +2 -3
  27. package/dist/esm/index.js +2 -2
  28. package/dist/esm/index.js.map +1 -1
  29. package/dist/esm/types.d.ts +25 -11
  30. package/package.json +6 -3
  31. package/dist/esm/form-array/types.d.ts +0 -23
  32. package/dist/esm/form-array/types.js +0 -2
  33. package/dist/esm/form-array/types.js.map +0 -1
@@ -1,18 +1,32 @@
1
- import { AbstractArray, AbstractArrayControl, AbstractArrayGroup, AbstractArrayGroupControls, AbstractFormControl, AbstractFormGroup, AbstractGroupControls } from '@rolster/helpers-forms';
1
+ import { AbstractArray, AbstractArrayControl, AbstractArrayControls, AbstractArrayGroup, AbstractControls, AbstractFormControl, AbstractFormGroup, FormArrayControlOptions, FormArrayGroupOptions } from '@rolster/forms';
2
+ import { ValidatorFn } from '@rolster/validators';
2
3
  import { RefObject } from 'react';
3
- export interface ReactFormControl<E extends HTMLElement = HTMLElement, T = any> extends Omit<AbstractFormControl<T>, 'subscribe'> {
4
+ export interface ReactFormControl<E extends HTMLElement = HTMLElement, T = any> extends AbstractFormControl<T> {
4
5
  elementRef?: RefObject<E>;
5
6
  }
7
+ export type ReactHtmlControl<T = any> = ReactFormControl<HTMLElement, T>;
8
+ export type ReactInputControl<T = any> = ReactFormControl<HTMLInputElement, T>;
9
+ export type ReactControls<T extends ReactFormControl = ReactFormControl> = AbstractControls<T>;
10
+ export type ReactGroup<C extends ReactControls = ReactControls> = AbstractFormGroup<C>;
11
+ export interface ReactArrayControlOptions<T = any> extends FormArrayControlOptions<T> {
12
+ initialState: T;
13
+ dirty?: boolean;
14
+ disabled?: boolean;
15
+ focused?: boolean;
16
+ touched?: boolean;
17
+ }
18
+ export type ReactSubscriberControl<T = any> = (options: ReactArrayControlOptions<T>) => void;
6
19
  export interface ReactArrayControl<E extends HTMLElement = HTMLElement, T = any> extends AbstractArrayControl<T> {
20
+ subscribe: (subscriber: ReactSubscriberControl<T>) => void;
7
21
  elementRef?: RefObject<E>;
22
+ validators?: ValidatorFn<T>[];
8
23
  }
24
+ export type ReactHtmlArrayControl<T = any> = ReactArrayControl<HTMLElement, T>;
25
+ export type ReactInputArrayControl<T = any> = ReactArrayControl<HTMLInputElement, T>;
26
+ export type ReactArrayControls<T extends ReactArrayControl = ReactArrayControl> = AbstractArrayControls<T>;
27
+ export type ReactSubscriberGroup<C extends ReactArrayControls = ReactArrayControls, R = any> = (options: FormArrayGroupOptions<C, R>) => void;
28
+ export interface ReactArrayGroup<C extends ReactArrayControls, R = any> extends AbstractArrayGroup<C, R> {
29
+ subscribe: (subscriber: ReactSubscriberGroup<C, R>) => void;
30
+ }
31
+ export type ReactFormArray<C extends ReactArrayControls = ReactArrayControls, R = any, G extends ReactArrayGroup<C, R> = ReactArrayGroup<C, R>> = AbstractArray<C, R, G>;
9
32
  export type ReactControl<E extends HTMLElement = HTMLElement, T = any> = ReactFormControl<E, T> | ReactArrayControl<E, T>;
10
- export type ReactInputControl<T = any> = ReactFormControl<HTMLInputElement, T>;
11
- export type ReactHtmlControl<T = any> = ReactFormControl<HTMLElement, T>;
12
- export type ReactArrayInputControl<T = any> = ReactArrayControl<HTMLInputElement, T>;
13
- export type ReactArrayHtmlControl<T = any> = ReactArrayControl<HTMLElement, T>;
14
- export type ReactControls = AbstractGroupControls<ReactFormControl<HTMLElement> | AbstractArray<any>>;
15
- export type ReactGroup<T extends ReactControls> = AbstractFormGroup<T>;
16
- export type ReactArrayControls<T extends ReactArrayControl = ReactArrayControl> = AbstractArrayGroupControls<T>;
17
- export type ReactArrayGroup<T extends ReactArrayControls, R = any> = AbstractArrayGroup<T, R>;
18
- export type ReactFormArray<T extends ReactArrayControls = ReactArrayControls, R = any> = AbstractArray<T, R>;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rolster/react-forms",
3
- "version": "18.2.10",
3
+ "version": "18.3.0",
4
4
  "description": "It implements a set of classes that allow managing the control of states of the input components in React",
5
5
  "module": "dist/esm/index.js",
6
6
  "main": "dist/cjs/index.js",
@@ -26,7 +26,7 @@
26
26
  "prepublishOnly": "npm run build"
27
27
  },
28
28
  "dependencies": {
29
- "@rolster/helpers-forms": "^1.10.8",
29
+ "@rolster/forms": "^2.3.0",
30
30
  "@rolster/validators": "^1.0.5",
31
31
  "uuid": "^9.0.1"
32
32
  },
@@ -59,5 +59,8 @@
59
59
  "typescript",
60
60
  "react",
61
61
  "forms"
62
- ]
62
+ ],
63
+ "publishConfig": {
64
+ "access": "public"
65
+ }
63
66
  }
@@ -1,23 +0,0 @@
1
- import { FormArrayControlProps, FormArrayGroupProps, FormState, ValidatorGroupFn } from '@rolster/helpers-forms';
2
- import { ValidatorFn } from '@rolster/validators';
3
- import { ReactArrayControl, ReactArrayControls, ReactArrayGroup, ReactFormArray } from '../types';
4
- export type RolsterArrayControls = ReactArrayControls<AbstractRolsterArrayControl>;
5
- export interface AbtractFormArrayControlProps<T = any> extends FormArrayControlProps<T> {
6
- dirty?: boolean;
7
- disabled?: boolean;
8
- initialState?: FormState<T>;
9
- focused?: boolean;
10
- touched?: boolean;
11
- }
12
- export interface AbstractRolsterArrayControl<T = any, C extends ReactArrayControls = any, E extends HTMLElement = HTMLElement> extends ReactArrayControl<E, T> {
13
- group?: AbstractRolsterArrayGroup<C>;
14
- validators?: ValidatorFn<T>[];
15
- }
16
- export interface RolsterFormArray<C extends ReactArrayControls> extends ReactFormArray<C> {
17
- refreshControl(control: AbstractRolsterArrayControl<any, C>, changes: Partial<AbtractFormArrayControlProps<any>>): void;
18
- refreshGroup(group: AbstractRolsterArrayGroup<C>, changes: Partial<FormArrayGroupProps<C>>): void;
19
- }
20
- export interface AbstractRolsterArrayGroup<C extends RolsterArrayControls = RolsterArrayControls, R = any> extends ReactArrayGroup<C, R> {
21
- parent?: RolsterFormArray<C>;
22
- validators?: ValidatorGroupFn<C>[];
23
- }
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/form-array/types.ts"],"names":[],"mappings":""}