suprform 1.0.11 → 1.0.12
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/components/SuprForm.d.ts.map +1 -1
- package/dist/suprform.cjs.js +1 -1
- package/dist/suprform.cjs.js.map +1 -1
- package/dist/suprform.es.js +208 -194
- package/dist/suprform.es.js.map +1 -1
- package/dist/type.d.ts +15 -10
- package/dist/type.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/type.d.ts
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { ReactElement, ReactNode } from 'react';
|
|
2
|
-
import { FieldValues, FieldPath, ControllerFieldState, ControllerRenderProps, RegisterOptions, SubmitHandler, UseFormProps, SubmitErrorHandler, PathValue, UseFieldArrayProps, UseFormReturn, UseFieldArrayReturn, DeepPartial } from 'react-hook-form';
|
|
2
|
+
import { FieldValues, FieldPath, ControllerFieldState, ControllerRenderProps, RegisterOptions, SubmitHandler, UseFormProps, SubmitErrorHandler, PathValue, UseFieldArrayProps, UseFormReturn, UseFieldArrayReturn, DeepPartial, ArrayPath } from 'react-hook-form';
|
|
3
3
|
export type SuprFormRef<TFieldValues extends FieldValues = FieldValues> = Pick<UseFormReturn<TFieldValues>, 'setValue' | 'setError' | 'clearErrors' | 'getValues' | 'reset' | 'setFocus' | 'resetField' | 'trigger' | 'unregister' | 'watch' | 'handleSubmit'>;
|
|
4
|
-
export type FormControlArrayRef<TFieldValues extends FieldValues = FieldValues> = UseFieldArrayReturn<TFieldValues>;
|
|
4
|
+
export type FormControlArrayRef<TFieldValues extends FieldValues = FieldValues, TArrayName extends ArrayPath<TFieldValues> = ArrayPath<TFieldValues>> = UseFieldArrayReturn<TFieldValues, TArrayName>;
|
|
5
5
|
type SuprFormBase = <TFieldValues extends FieldValues = FieldValues>(props: SuprFormProps<TFieldValues>) => ReactElement;
|
|
6
6
|
export type SuprFormComponent = SuprFormBase & {
|
|
7
7
|
Control: <TFieldValues extends FieldValues = FieldValues, TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>>(props: FormControlProps<TFieldValues, TName>) => ReactElement;
|
|
8
|
-
ControlArray: (props: FormControlArrayProps) => ReactElement;
|
|
8
|
+
ControlArray: <TFieldValues extends FieldValues = FieldValues, TArrayName extends ArrayPath<TFieldValues> = ArrayPath<TFieldValues>>(props: FormControlArrayProps<TFieldValues, TArrayName>) => ReactElement;
|
|
9
9
|
};
|
|
10
10
|
export interface SuprFormProps<TFieldValues extends FieldValues = FieldValues> {
|
|
11
11
|
children: ReactNode;
|
|
@@ -29,19 +29,21 @@ export interface FormControlProps<TFieldValues extends FieldValues = FieldValues
|
|
|
29
29
|
disabled?: boolean;
|
|
30
30
|
visibility?: boolean | Visibility<TFieldValues>;
|
|
31
31
|
}
|
|
32
|
-
export interface FormControlArrayProps<TFieldValues extends FieldValues = FieldValues> extends Omit<UseFieldArrayProps, 'control'> {
|
|
33
|
-
ref?: React.Ref<FormControlArrayRef<TFieldValues>>;
|
|
32
|
+
export interface FormControlArrayProps<TFieldValues extends FieldValues = FieldValues, TArrayName extends ArrayPath<TFieldValues> = ArrayPath<TFieldValues>> extends Omit<UseFieldArrayProps<TFieldValues, TArrayName>, 'control'> {
|
|
33
|
+
ref?: React.Ref<FormControlArrayRef<TFieldValues, TArrayName>>;
|
|
34
34
|
className?: string;
|
|
35
35
|
children: ReactNode;
|
|
36
|
+
visibility?: ControlArrayVisibilityMap<TFieldValues, TArrayName>;
|
|
36
37
|
}
|
|
37
38
|
type StringOperators = 'EQUALS' | 'NOT_EQUALS' | 'STARTS_WITH' | 'ENDS_WITH' | 'INCLUDES' | 'NOT_INCLUDES';
|
|
38
39
|
type NumberOperators = 'EQUALS' | 'NOT_EQUALS' | 'GREATER_THAN' | 'LESS_THAN' | 'GREATER_THAN_OR_EQUAL' | 'LESS_THAN_OR_EQUAL';
|
|
39
|
-
type
|
|
40
|
-
type
|
|
40
|
+
type BooleanOperators = 'EQUALS' | 'NOT_EQUALS';
|
|
41
|
+
type OperatorForType<T> = T extends string ? StringOperators : T extends number ? NumberOperators : T extends boolean ? BooleanOperators : never;
|
|
42
|
+
type ValueForType<T> = T extends string ? string : T extends number ? number : T extends boolean ? boolean : never;
|
|
41
43
|
type Condition<TFieldValues extends FieldValues, TFieldName extends FieldPath<TFieldValues>> = {
|
|
42
44
|
name: TFieldName;
|
|
43
|
-
value: ValueForType<PathValue<TFieldValues, TFieldName
|
|
44
|
-
operator: OperatorForType<PathValue<TFieldValues, TFieldName
|
|
45
|
+
value: ValueForType<NonNullable<PathValue<TFieldValues, TFieldName>>>;
|
|
46
|
+
operator: OperatorForType<NonNullable<PathValue<TFieldValues, TFieldName>>>;
|
|
45
47
|
};
|
|
46
48
|
type AnyCondition<TFieldValues extends FieldValues> = {
|
|
47
49
|
[K in FieldPath<TFieldValues>]: Condition<TFieldValues, K>;
|
|
@@ -50,6 +52,9 @@ export interface Visibility<TFieldValues extends FieldValues = FieldValues> {
|
|
|
50
52
|
operator: 'AND' | 'OR';
|
|
51
53
|
conditions: Array<AnyCondition<TFieldValues>>;
|
|
52
54
|
}
|
|
55
|
+
type FieldArrayItem<T> = T extends ReadonlyArray<infer U> ? U : never;
|
|
56
|
+
type FieldArrayItemFromValues<TFieldValues extends FieldValues, TArrayName extends ArrayPath<TFieldValues>> = FieldArrayItem<PathValue<TFieldValues, TArrayName & FieldPath<TFieldValues>>> extends FieldValues ? FieldArrayItem<PathValue<TFieldValues, TArrayName & FieldPath<TFieldValues>>> : FieldValues;
|
|
57
|
+
export type ControlArrayVisibilityMap<TFieldValues extends FieldValues, TArrayName extends ArrayPath<TFieldValues>> = Partial<Record<FieldPath<FieldArrayItemFromValues<TFieldValues, TArrayName>>, Visibility<FieldArrayItemFromValues<TFieldValues, TArrayName>>>>;
|
|
53
58
|
export interface ControlledFieldProps<TFieldValues extends FieldValues = FieldValues, TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>> {
|
|
54
59
|
field: ControllerRenderProps<TFieldValues, TName>;
|
|
55
60
|
fieldState: ControllerFieldState;
|
|
@@ -64,6 +69,6 @@ export interface ConditionCheckProps<TFieldValues extends FieldValues = FieldVal
|
|
|
64
69
|
children: React.ReactNode;
|
|
65
70
|
visibility?: boolean | Visibility<TFieldValues>;
|
|
66
71
|
}
|
|
67
|
-
export type ConditionDataType = string | number;
|
|
72
|
+
export type ConditionDataType = string | number | boolean;
|
|
68
73
|
export {};
|
|
69
74
|
//# sourceMappingURL=type.d.ts.map
|
package/dist/type.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"type.d.ts","sourceRoot":"","sources":["../src/type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAChD,OAAO,EACL,WAAW,EACX,SAAS,EACT,oBAAoB,EACpB,qBAAqB,EACrB,eAAe,EACf,aAAa,EACb,YAAY,EACZ,kBAAkB,EAClB,SAAS,EACT,kBAAkB,EAClB,aAAa,EACb,mBAAmB,EACnB,WAAW,
|
|
1
|
+
{"version":3,"file":"type.d.ts","sourceRoot":"","sources":["../src/type.ts"],"names":[],"mappings":"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"}
|