react-server-actions 1.0.14 → 1.0.15
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/client/__tests__/helpers.test.js +1 -1
- package/dist/client/helpers.d.ts +1 -1
- package/dist/client/helpers.d.ts.map +1 -1
- package/dist/client/helpers.js +72 -58
- package/dist/client/helpers.js.map +1 -1
- package/dist/client/index.d.ts +8 -8
- package/dist/client/index.d.ts.map +1 -1
- package/dist/client/index.js +1 -1
- package/dist/client/index.js.map +1 -1
- package/dist/index.d.ts +4 -4
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -2
- package/dist/index.js.map +1 -1
- package/dist/server/actions.d.ts +13 -19
- package/dist/server/actions.d.ts.map +1 -1
- package/dist/server/actions.js +32 -23
- package/dist/server/actions.js.map +1 -1
- package/dist/server/decode_form.d.ts +3 -2
- package/dist/server/decode_form.d.ts.map +1 -1
- package/dist/server/decode_form.js +9 -2
- package/dist/server/decode_form.js.map +1 -1
- package/dist/server/helpers.d.ts +25 -27
- package/dist/server/helpers.d.ts.map +1 -1
- package/dist/server/helpers.js +29 -28
- package/dist/server/helpers.js.map +1 -1
- package/dist/server/types.d.ts +21 -14
- package/dist/server/types.d.ts.map +1 -1
- package/package.json +11 -10
package/dist/client/helpers.d.ts
CHANGED
|
@@ -9,7 +9,7 @@ import { z } from 'zod';
|
|
|
9
9
|
* We could make a "guess" based on the zod rule, and then could be overriden by the user, but this would lead to confusion.
|
|
10
10
|
* So we leave it as a parameter for now.
|
|
11
11
|
*/
|
|
12
|
-
export declare function getZodValidationAttributes(schema: z.
|
|
12
|
+
export declare function getZodValidationAttributes(schema: z.ZodType<any>, path: string[], options?: {
|
|
13
13
|
inferTypeAttr?: boolean;
|
|
14
14
|
}): {
|
|
15
15
|
type: 'string' | 'number' | 'date' | 'boolean' | 'enum';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../src/client/helpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;;;;;;;GASG;AACH,wBAAgB,0BAA0B,CACxC,MAAM,EAAE,CAAC,CAAC,
|
|
1
|
+
{"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../src/client/helpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;;;;;;;GASG;AACH,wBAAgB,0BAA0B,CACxC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,EACtB,IAAI,EAAE,MAAM,EAAE,EACd,OAAO,CAAC,EAAE;IACR,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB,GACA;IACD,IAAI,EAAE,QAAQ,GAAG,QAAQ,GAAG,MAAM,GAAG,SAAS,GAAG,MAAM,CAAC;IACxD,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,CAAC;CAClD,CAmIA;AAED;;;;GAIG;AACH,eAAO,MAAM,uBAAuB,SAAU,IAAI,uBAKjD,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,2BAA2B,SAAU,IAAI,WAKrD,CAAC"}
|
package/dist/client/helpers.js
CHANGED
|
@@ -10,112 +10,126 @@ import { z } from 'zod';
|
|
|
10
10
|
* So we leave it as a parameter for now.
|
|
11
11
|
*/
|
|
12
12
|
export function getZodValidationAttributes(schema, path, options) {
|
|
13
|
-
const def = schema._def;
|
|
14
13
|
let type = 'string';
|
|
15
14
|
const attrs = {};
|
|
16
15
|
// First handle object type to get to the actual field
|
|
17
|
-
if (
|
|
18
|
-
const shape =
|
|
16
|
+
if (schema instanceof z.ZodObject && path.length > 0) {
|
|
17
|
+
const shape = schema.shape;
|
|
19
18
|
const field = shape[path[0]];
|
|
20
19
|
return field
|
|
21
20
|
? getZodValidationAttributes(field, path.slice(1), options)
|
|
22
21
|
: { type, attrs };
|
|
23
22
|
}
|
|
24
|
-
if (
|
|
25
|
-
return getZodValidationAttributes(
|
|
23
|
+
if (schema instanceof z.ZodTransform) {
|
|
24
|
+
return getZodValidationAttributes(schema._def.in, path, options);
|
|
25
|
+
}
|
|
26
|
+
if (schema instanceof z.ZodPipe) {
|
|
27
|
+
return getZodValidationAttributes(schema._def.in, path, options);
|
|
26
28
|
}
|
|
27
29
|
// Now we're at the actual field, check if it's optional/nullable
|
|
28
30
|
const isOptionalType = schema instanceof z.ZodOptional;
|
|
29
31
|
const isNullableType = schema instanceof z.ZodNullable;
|
|
30
32
|
// If it's an optional/nullable type, get attributes from the inner type but don't set required
|
|
31
33
|
if (isOptionalType || isNullableType) {
|
|
32
|
-
const
|
|
34
|
+
const innerSchema = schema._def.innerType;
|
|
35
|
+
const innerAttrs = getZodValidationAttributes(innerSchema, path, options);
|
|
33
36
|
delete innerAttrs.attrs.required;
|
|
34
37
|
return innerAttrs;
|
|
35
38
|
}
|
|
36
|
-
//
|
|
37
|
-
|
|
38
|
-
if (
|
|
39
|
+
// Handle default values - if it's a ZodDefault, get the inner type and don't set required
|
|
40
|
+
let actualSchema = schema;
|
|
41
|
+
if (schema instanceof z.ZodDefault) {
|
|
42
|
+
actualSchema = schema._def.innerType;
|
|
43
|
+
// Don't set required for fields with default values
|
|
44
|
+
}
|
|
45
|
+
else {
|
|
39
46
|
attrs.required = true;
|
|
40
47
|
}
|
|
41
|
-
|
|
42
|
-
? def.innerType._def.typeName
|
|
43
|
-
: def.typeName === 'ZodCoerce'
|
|
44
|
-
? def.schema._def.typeName
|
|
45
|
-
: def.typeName;
|
|
46
|
-
if (typeName === 'ZodString') {
|
|
48
|
+
if (actualSchema instanceof z.ZodString) {
|
|
47
49
|
type = 'string';
|
|
48
50
|
attrs.type = 'text';
|
|
49
|
-
|
|
51
|
+
// Access checks through the schema's internal structure
|
|
52
|
+
const checks = actualSchema._def?.checks;
|
|
50
53
|
if (checks) {
|
|
51
54
|
for (const check of checks) {
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
55
|
+
const checkDef = check._zod?.def;
|
|
56
|
+
if (checkDef) {
|
|
57
|
+
if (checkDef.check === 'min_length') {
|
|
58
|
+
attrs.minLength = checkDef.minimum;
|
|
59
|
+
}
|
|
60
|
+
if (checkDef.check === 'max_length') {
|
|
61
|
+
attrs.maxLength = checkDef.maximum;
|
|
62
|
+
}
|
|
63
|
+
if (checkDef.format === 'email') {
|
|
64
|
+
attrs.type = 'email';
|
|
65
|
+
}
|
|
66
|
+
if (checkDef.format === 'url') {
|
|
67
|
+
attrs.type = 'url';
|
|
68
|
+
}
|
|
63
69
|
}
|
|
64
70
|
}
|
|
65
71
|
}
|
|
66
72
|
}
|
|
67
|
-
else if (
|
|
73
|
+
else if (actualSchema instanceof z.ZodNumber) {
|
|
68
74
|
type = 'number';
|
|
69
75
|
attrs.type = 'number';
|
|
70
|
-
const checks =
|
|
71
|
-
? def.innerType._def.checks
|
|
72
|
-
: def.typeName === 'ZodCoerce'
|
|
73
|
-
? def.schema._def.checks
|
|
74
|
-
: def.checks;
|
|
76
|
+
const checks = actualSchema._def?.checks;
|
|
75
77
|
if (checks) {
|
|
76
78
|
for (const check of checks) {
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
79
|
+
const checkDef = check._zod?.def;
|
|
80
|
+
if (checkDef) {
|
|
81
|
+
if (checkDef.check === 'greater_than' && checkDef.inclusive) {
|
|
82
|
+
attrs.min = checkDef.value;
|
|
83
|
+
}
|
|
84
|
+
if (checkDef.check === 'less_than' && checkDef.inclusive) {
|
|
85
|
+
attrs.max = checkDef.value;
|
|
86
|
+
}
|
|
87
|
+
if (checkDef.check === 'greater_than' && !checkDef.inclusive) {
|
|
88
|
+
attrs.min = checkDef.value + 1;
|
|
89
|
+
}
|
|
90
|
+
if (checkDef.check === 'less_than' && !checkDef.inclusive) {
|
|
91
|
+
attrs.max = checkDef.value - 1;
|
|
92
|
+
}
|
|
93
|
+
if (checkDef.format === 'safeint') {
|
|
94
|
+
attrs.step = 1;
|
|
95
|
+
}
|
|
85
96
|
}
|
|
86
97
|
}
|
|
87
98
|
}
|
|
88
99
|
}
|
|
89
|
-
else if (
|
|
100
|
+
else if (actualSchema instanceof z.ZodDate) {
|
|
90
101
|
type = 'date';
|
|
91
102
|
attrs.type = 'date';
|
|
92
|
-
const checks =
|
|
93
|
-
? def.innerType._def.checks
|
|
94
|
-
: def.typeName === 'ZodCoerce'
|
|
95
|
-
? def.schema._def.checks
|
|
96
|
-
: def.checks;
|
|
103
|
+
const checks = actualSchema._def?.checks;
|
|
97
104
|
if (checks) {
|
|
98
105
|
for (const check of checks) {
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
if (
|
|
102
|
-
|
|
106
|
+
const checkDef = check._zod?.def;
|
|
107
|
+
if (checkDef) {
|
|
108
|
+
if (checkDef.check === 'greater_than' && checkDef.inclusive) {
|
|
109
|
+
const minDate = new Date(checkDef.value)
|
|
110
|
+
.toISOString()
|
|
111
|
+
.split('T')[0];
|
|
112
|
+
if (minDate) {
|
|
113
|
+
attrs.min = minDate;
|
|
114
|
+
}
|
|
103
115
|
}
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
116
|
+
if (checkDef.check === 'less_than' && checkDef.inclusive) {
|
|
117
|
+
const maxDate = new Date(checkDef.value)
|
|
118
|
+
.toISOString()
|
|
119
|
+
.split('T')[0];
|
|
120
|
+
if (maxDate) {
|
|
121
|
+
attrs.max = maxDate;
|
|
122
|
+
}
|
|
109
123
|
}
|
|
110
124
|
}
|
|
111
125
|
}
|
|
112
126
|
}
|
|
113
127
|
}
|
|
114
|
-
else if (
|
|
128
|
+
else if (actualSchema instanceof z.ZodBoolean) {
|
|
115
129
|
type = 'boolean';
|
|
116
130
|
attrs.type = 'checkbox';
|
|
117
131
|
}
|
|
118
|
-
else if (
|
|
132
|
+
else if (actualSchema instanceof z.ZodEnum) {
|
|
119
133
|
type = 'enum';
|
|
120
134
|
attrs.type = 'radio';
|
|
121
135
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/client/helpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;;;;;;;GASG;AACH,MAAM,UAAU,0BAA0B,CACxC,
|
|
1
|
+
{"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/client/helpers.ts"],"names":[],"mappings":"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"}
|
package/dist/client/index.d.ts
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { z } from 'zod';
|
|
3
|
-
import type {
|
|
4
|
-
export declare const useForm: <Schema extends z.
|
|
3
|
+
import type { ActionResultWithFormData } from '../index.js';
|
|
4
|
+
export declare const useForm: <Schema extends z.ZodObject>() => {
|
|
5
5
|
state: undefined;
|
|
6
6
|
schema: undefined;
|
|
7
7
|
debug: boolean;
|
|
8
8
|
} | {
|
|
9
|
-
state:
|
|
9
|
+
state: ActionResultWithFormData<Schema>;
|
|
10
10
|
schema: Schema;
|
|
11
11
|
debug: boolean | undefined;
|
|
12
12
|
};
|
|
@@ -22,19 +22,19 @@ type UseFieldReturn = {
|
|
|
22
22
|
defaultChecked?: boolean;
|
|
23
23
|
};
|
|
24
24
|
};
|
|
25
|
-
export declare const useField: <Schema extends z.
|
|
26
|
-
export declare function Form<Schema extends z.
|
|
25
|
+
export declare const useField: <Schema extends z.ZodObject>() => UseFieldReturn;
|
|
26
|
+
export declare function Form<Schema extends z.ZodObject>({ children, action, state, schema, className, reset, onSuccess, onError, debug, ...props }: React.ComponentProps<'form'> & {
|
|
27
27
|
children: React.ReactNode;
|
|
28
28
|
action: (payload: FormData) => void;
|
|
29
|
-
state:
|
|
29
|
+
state: ActionResultWithFormData<Schema>;
|
|
30
30
|
schema: Schema;
|
|
31
31
|
className?: string;
|
|
32
32
|
reset?: boolean;
|
|
33
|
-
onSuccess?: (
|
|
33
|
+
onSuccess?: (data: any, formData: z.TypeOf<Schema> | undefined) => void;
|
|
34
34
|
onError?: (error: string) => void;
|
|
35
35
|
debug?: boolean;
|
|
36
36
|
}): React.JSX.Element;
|
|
37
|
-
export declare function FormField<Schema extends z.
|
|
37
|
+
export declare function FormField<Schema extends z.ZodObject>({ render, name, }: {
|
|
38
38
|
render: (field: ReturnType<typeof useField>) => React.ReactNode;
|
|
39
39
|
name: keyof z.TypeOf<Schema>;
|
|
40
40
|
}): React.JSX.Element;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/client/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAA4B,MAAM,OAAO,CAAC;AACjD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/client/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAA4B,MAAM,OAAO,CAAC;AACjD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAC;AAY5D,eAAO,MAAM,OAAO,GAAI,MAAM,SAAS,CAAC,CAAC,SAAS;;;;;WAKtB,wBAAwB,CAAC,MAAM,CAAC;YAC9B,MAAM;;CAGnC,CAAC;AAOF,KAAK,cAAc,GAAG;IACpB,OAAO,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;IAC9B,KAAK,EAAE,GAAG,CAAC;IACX,KAAK,EAAE;QACL,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,MAAM,CAAC;QAEb,cAAc,EAAE,OAAO,CAAC;QACxB,YAAY,EAAE,IAAI,GAAG,KAAK,GAAG,SAAS,CAAC;QACvC,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,cAAc,CAAC,EAAE,OAAO,CAAC;KAC1B,CAAC;CACH,CAAC;AACF,eAAO,MAAM,QAAQ,GAAI,MAAM,SAAS,CAAC,CAAC,SAAS,OAAK,cAkDvD,CAAC;AAEF,wBAAgB,IAAI,CAAC,MAAM,SAAS,CAAC,CAAC,SAAS,EAAE,EAC/C,QAAQ,EACR,MAAM,EACN,KAAK,EACL,MAAM,EACN,SAAS,EACT,KAAK,EACL,SAAS,EACT,OAAO,EACP,KAAK,EACL,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,GAAG;IAChC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,MAAM,EAAE,CAAC,OAAO,EAAE,QAAQ,KAAK,IAAI,CAAC;IACpC,KAAK,EAAE,wBAAwB,CAAC,MAAM,CAAC,CAAC;IACxC,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,SAAS,KAAK,IAAI,CAAC;IACxE,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB,qBAsBA;AAED,wBAAgB,SAAS,CAAC,MAAM,SAAS,CAAC,CAAC,SAAS,EAAE,EACpD,MAAM,EACN,IAAI,GACL,EAAE;IACD,MAAM,EAAE,CAAC,KAAK,EAAE,UAAU,CAAC,OAAO,QAAQ,CAAC,KAAK,KAAK,CAAC,SAAS,CAAC;IAChE,IAAI,EAAE,MAAM,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;CAC9B,qBAOA"}
|
package/dist/client/index.js
CHANGED
|
@@ -76,7 +76,7 @@ export function Form({ children, action, state, schema, className, reset, onSucc
|
|
|
76
76
|
}
|
|
77
77
|
useEffect(() => {
|
|
78
78
|
if (state.success) {
|
|
79
|
-
onSuccess?.(state.
|
|
79
|
+
onSuccess?.(state.data, state.formData);
|
|
80
80
|
}
|
|
81
81
|
else if (state.error) {
|
|
82
82
|
onError?.(state.error);
|
package/dist/client/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/client/index.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,OAAO,KAAK,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AACjD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EACL,uBAAuB,EACvB,0BAA0B,GAC3B,MAAM,cAAc,CAAC;AAEtB,MAAM,WAAW,GAAG,KAAK,CAAC,aAAa,CAIpC,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;AAE1D,MAAM,CAAC,MAAM,OAAO,GAAG,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/client/index.tsx"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { dateToInputDefaultValue, datetimeToInputDefaultValue } from './client/helpers.js';
|
|
2
2
|
import { Form, FormField, useField, useForm } from './client/index.js';
|
|
3
3
|
import { ActionClient } from './server/actions.js';
|
|
4
|
-
import {
|
|
5
|
-
import { type
|
|
6
|
-
export { ActionClient, Form, FormField,
|
|
7
|
-
export type {
|
|
4
|
+
import { error, initialState, invalid, success } from './server/helpers.js';
|
|
5
|
+
import { type ActionResultWithFormData, type ErrorActionResultWithFormData, type FieldErrors, type IdleActionResultWithFormData, type InvalidActionResultWithFormData, type SuccessActionResultWithFormData } from './server/types.js';
|
|
6
|
+
export { ActionClient, Form, FormField, dateToInputDefaultValue, datetimeToInputDefaultValue, error, initialState, invalid, success, useField, useForm, };
|
|
7
|
+
export type { ActionResultWithFormData, ErrorActionResultWithFormData, FieldErrors, IdleActionResultWithFormData, InvalidActionResultWithFormData, SuccessActionResultWithFormData, };
|
|
8
8
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,uBAAuB,EACvB,2BAA2B,EAC5B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AACvE,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,uBAAuB,EACvB,2BAA2B,EAC5B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AACvE,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAC5E,OAAO,EACL,KAAK,wBAAwB,EAC7B,KAAK,6BAA6B,EAClC,KAAK,WAAW,EAChB,KAAK,4BAA4B,EACjC,KAAK,+BAA+B,EACpC,KAAK,+BAA+B,EACrC,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,YAAY,EACZ,IAAI,EACJ,SAAS,EACT,uBAAuB,EACvB,2BAA2B,EAC3B,KAAK,EACL,YAAY,EACZ,OAAO,EACP,OAAO,EACP,QAAQ,EACR,OAAO,GACR,CAAC;AACF,YAAY,EACV,wBAAwB,EACxB,6BAA6B,EAC7B,WAAW,EACX,4BAA4B,EAC5B,+BAA+B,EAC/B,+BAA+B,GAChC,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { dateToInputDefaultValue, datetimeToInputDefaultValue, } from './client/helpers.js';
|
|
2
2
|
import { Form, FormField, useField, useForm } from './client/index.js';
|
|
3
3
|
import { ActionClient } from './server/actions.js';
|
|
4
|
-
import {
|
|
4
|
+
import { error, initialState, invalid, success } from './server/helpers.js';
|
|
5
5
|
import {} from './server/types.js';
|
|
6
|
-
export { ActionClient, Form, FormField,
|
|
6
|
+
export { ActionClient, Form, FormField, dateToInputDefaultValue, datetimeToInputDefaultValue, error, initialState, invalid, success, useField, useForm, };
|
|
7
7
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,uBAAuB,EACvB,2BAA2B,GAC5B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AACvE,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,uBAAuB,EACvB,2BAA2B,GAC5B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AACvE,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAC5E,OAAO,EAON,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,YAAY,EACZ,IAAI,EACJ,SAAS,EACT,uBAAuB,EACvB,2BAA2B,EAC3B,KAAK,EACL,YAAY,EACZ,OAAO,EACP,OAAO,EACP,QAAQ,EACR,OAAO,GACR,CAAC"}
|
package/dist/server/actions.d.ts
CHANGED
|
@@ -1,30 +1,24 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
|
-
import { type ErrorActionResult, type InvalidActionResult } from './types.js';
|
|
2
|
+
import { type ActionResultWithFormData, type ConvertEmptyToValue, type ErrorActionResult, type InvalidActionResult, type SuccessActionResult } from './types.js';
|
|
3
3
|
export declare class ActionClient {
|
|
4
|
-
|
|
4
|
+
handleExceptionsAsFormErrors: boolean;
|
|
5
|
+
convertEmptyTo: ConvertEmptyToValue;
|
|
5
6
|
constructor(options?: {
|
|
6
|
-
|
|
7
|
+
handleExceptionsAsFormErrors: boolean;
|
|
8
|
+
convertEmptyTo: ConvertEmptyToValue;
|
|
7
9
|
});
|
|
8
|
-
action: <Schema extends z.
|
|
10
|
+
action: <Schema extends z.ZodType<any>>(schema: Schema, fn: ({ data, formData, }: {
|
|
9
11
|
data: z.infer<Schema>;
|
|
10
12
|
formData: FormData;
|
|
11
|
-
}) =>
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
invalid: undefined;
|
|
16
|
-
error: undefined;
|
|
17
|
-
}>;
|
|
18
|
-
actionWithParam: <Schema extends z.ZodTypeAny>(schema: Schema, fn: ({ param, data, formData, }: {
|
|
13
|
+
}) => Promise<SuccessActionResult | InvalidActionResult<Schema> | ErrorActionResult>, options?: {
|
|
14
|
+
handleExceptionsAsFormErrors?: boolean;
|
|
15
|
+
}) => (_prevState: unknown, data: FormData) => Promise<ActionResultWithFormData<Schema>>;
|
|
16
|
+
actionWithParam: <Schema extends z.ZodType<any>>(schema: Schema, fn: ({ param, data, formData, }: {
|
|
19
17
|
param: string;
|
|
20
18
|
data: z.infer<Schema>;
|
|
21
19
|
formData: FormData;
|
|
22
|
-
}) =>
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
successData: any;
|
|
26
|
-
invalid: undefined;
|
|
27
|
-
error: undefined;
|
|
28
|
-
}>;
|
|
20
|
+
}) => Promise<SuccessActionResult | InvalidActionResult<Schema> | ErrorActionResult>, options?: {
|
|
21
|
+
handleExceptionsAsFormErrors?: boolean;
|
|
22
|
+
}) => (param: string, _prevState: unknown, data: FormData) => Promise<ActionResultWithFormData<Schema>>;
|
|
29
23
|
}
|
|
30
24
|
//# sourceMappingURL=actions.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"actions.d.ts","sourceRoot":"","sources":["../../src/server/actions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"actions.d.ts","sourceRoot":"","sources":["../../src/server/actions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAWxB,OAAO,EACL,KAAK,wBAAwB,EAC7B,KAAK,mBAAmB,EACxB,KAAK,iBAAiB,EAEtB,KAAK,mBAAmB,EACxB,KAAK,mBAAmB,EACzB,MAAM,YAAY,CAAC;AAEpB,qBAAa,YAAY;IACvB,4BAA4B,EAAE,OAAO,CAAC;IACtC,cAAc,EAAE,mBAAmB,CAAC;gBAGlC,OAAO,GAAE;QACP,4BAA4B,EAAE,OAAO,CAAC;QACtC,cAAc,EAAE,mBAAmB,CAAC;KAIrC;IAOH,MAAM,GAAI,MAAM,SAAS,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,UAC7B,MAAM,MACV,CAAC,EACH,IAAI,EACJ,QAAQ,GACT,EAAE;QACD,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QACtB,QAAQ,EAAE,QAAQ,CAAC;KACpB,KAAK,OAAO,CACX,mBAAmB,GAAG,mBAAmB,CAAC,MAAM,CAAC,GAAG,iBAAiB,CACtE,YACS;QACR,4BAA4B,CAAC,EAAE,OAAO,CAAC;KACxC,kBAGa,OAAO,QACb,QAAQ,KACb,OAAO,CAAC,wBAAwB,CAAC,MAAM,CAAC,CAAC,CAqD5C;IAEF,eAAe,GAAI,MAAM,SAAS,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,UACtC,MAAM,MACV,CAAC,EACH,KAAK,EACL,IAAI,EACJ,QAAQ,GACT,EAAE;QACD,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QACtB,QAAQ,EAAE,QAAQ,CAAC;KACpB,KAAK,OAAO,CACX,mBAAmB,GAAG,mBAAmB,CAAC,MAAM,CAAC,GAAG,iBAAiB,CACtE,YACS;QACR,4BAA4B,CAAC,EAAE,OAAO,CAAC;KACxC,aAGQ,MAAM,cACD,OAAO,QACb,QAAQ,KACb,OAAO,CAAC,wBAAwB,CAAC,MAAM,CAAC,CAAC,CAoD5C;CACH"}
|
package/dist/server/actions.js
CHANGED
|
@@ -1,43 +1,50 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
2
|
import { decodeFormData, serialize } from './decode_form.js';
|
|
3
|
-
import { error,
|
|
3
|
+
import { _actionError, _actionInvalid, _actionSuccess, error, invalid, isErrorActionResult, isInvalidActionResult, } from './helpers.js';
|
|
4
4
|
import {} from './types.js';
|
|
5
5
|
export class ActionClient {
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
6
|
+
handleExceptionsAsFormErrors;
|
|
7
|
+
convertEmptyTo;
|
|
8
|
+
constructor(options = {
|
|
9
|
+
handleExceptionsAsFormErrors: true,
|
|
10
|
+
convertEmptyTo: 'undefined',
|
|
11
|
+
}) {
|
|
12
|
+
this.handleExceptionsAsFormErrors = options.handleExceptionsAsFormErrors;
|
|
13
|
+
this.convertEmptyTo = options.convertEmptyTo;
|
|
9
14
|
}
|
|
10
15
|
// ** Action wrapper
|
|
11
|
-
action = (schema, fn) => {
|
|
16
|
+
action = (schema, fn, options) => {
|
|
12
17
|
return async (_prevState, data) => {
|
|
13
|
-
const formData = decodeFormData(data);
|
|
18
|
+
const formData = decodeFormData(data, this.convertEmptyTo);
|
|
14
19
|
const parsedData = await schema.safeParseAsync(formData);
|
|
20
|
+
const serializedData = serialize(formData);
|
|
15
21
|
if (!parsedData.success) {
|
|
16
|
-
return
|
|
22
|
+
return _actionInvalid(serializedData, invalid(parsedData.error.flatten().fieldErrors));
|
|
17
23
|
}
|
|
18
24
|
try {
|
|
19
25
|
const actionResponse = await fn({
|
|
20
26
|
data: parsedData.data,
|
|
21
27
|
formData: data,
|
|
22
28
|
});
|
|
23
|
-
if (actionResponse &&
|
|
24
|
-
// Permit to return a
|
|
25
|
-
return actionResponse;
|
|
29
|
+
if (actionResponse && isInvalidActionResult(actionResponse)) {
|
|
30
|
+
// Permit to return a InvalidActionResult from the action for custom validations
|
|
31
|
+
return _actionInvalid(serializedData, actionResponse);
|
|
26
32
|
}
|
|
27
33
|
if (actionResponse && isErrorActionResult(actionResponse)) {
|
|
28
34
|
// Permit to return a ErrorActionResult from the action for custom errors
|
|
29
|
-
return actionResponse;
|
|
35
|
+
return _actionError(serializedData, actionResponse);
|
|
30
36
|
}
|
|
31
|
-
return
|
|
37
|
+
return _actionSuccess(serializedData, actionResponse);
|
|
32
38
|
}
|
|
33
39
|
catch (e) {
|
|
34
|
-
if (
|
|
40
|
+
if (options?.handleExceptionsAsFormErrors ??
|
|
41
|
+
this.handleExceptionsAsFormErrors) {
|
|
35
42
|
if (e instanceof Error &&
|
|
36
43
|
(e.message === 'NEXT_REDIRECT' || e.message === 'NEXT_NOT_FOUND')) {
|
|
37
44
|
throw e;
|
|
38
45
|
}
|
|
39
46
|
else {
|
|
40
|
-
return
|
|
47
|
+
return _actionError(serializedData, error(e));
|
|
41
48
|
}
|
|
42
49
|
}
|
|
43
50
|
else {
|
|
@@ -46,12 +53,13 @@ export class ActionClient {
|
|
|
46
53
|
}
|
|
47
54
|
};
|
|
48
55
|
};
|
|
49
|
-
actionWithParam = (schema, fn) => {
|
|
56
|
+
actionWithParam = (schema, fn, options) => {
|
|
50
57
|
return async (param, _prevState, data) => {
|
|
51
|
-
const formData = decodeFormData(data);
|
|
58
|
+
const formData = decodeFormData(data, this.convertEmptyTo);
|
|
52
59
|
const parsedData = await schema.safeParseAsync(formData);
|
|
60
|
+
const serializedData = serialize(formData);
|
|
53
61
|
if (!parsedData.success) {
|
|
54
|
-
return
|
|
62
|
+
return _actionInvalid(serializedData, invalid(parsedData.error.flatten().fieldErrors));
|
|
55
63
|
}
|
|
56
64
|
try {
|
|
57
65
|
const actionResponse = await fn({
|
|
@@ -59,22 +67,23 @@ export class ActionClient {
|
|
|
59
67
|
data: parsedData.data,
|
|
60
68
|
formData: data,
|
|
61
69
|
});
|
|
62
|
-
if (actionResponse &&
|
|
63
|
-
return actionResponse;
|
|
70
|
+
if (actionResponse && isInvalidActionResult(actionResponse)) {
|
|
71
|
+
return _actionInvalid(serializedData, actionResponse);
|
|
64
72
|
}
|
|
65
73
|
if (actionResponse && isErrorActionResult(actionResponse)) {
|
|
66
|
-
return actionResponse;
|
|
74
|
+
return _actionError(serializedData, actionResponse);
|
|
67
75
|
}
|
|
68
|
-
return
|
|
76
|
+
return _actionSuccess(serializedData, actionResponse);
|
|
69
77
|
}
|
|
70
78
|
catch (e) {
|
|
71
|
-
if (
|
|
79
|
+
if (options?.handleExceptionsAsFormErrors ??
|
|
80
|
+
this.handleExceptionsAsFormErrors) {
|
|
72
81
|
if (e instanceof Error &&
|
|
73
82
|
(e.message === 'NEXT_REDIRECT' || e.message === 'NEXT_NOT_FOUND')) {
|
|
74
83
|
throw e;
|
|
75
84
|
}
|
|
76
85
|
else {
|
|
77
|
-
return
|
|
86
|
+
return _actionError(serializedData, error(e));
|
|
78
87
|
}
|
|
79
88
|
}
|
|
80
89
|
else {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"actions.js","sourceRoot":"","sources":["../../src/server/actions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7D,OAAO,EACL,KAAK,EACL,OAAO,EACP,mBAAmB,EACnB,qBAAqB,
|
|
1
|
+
{"version":3,"file":"actions.js","sourceRoot":"","sources":["../../src/server/actions.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { z } from 'zod';
|
|
2
|
-
|
|
3
|
-
export declare const
|
|
2
|
+
import type { ConvertEmptyToValue } from './types.js';
|
|
3
|
+
export declare const decodeFormData: (formData: FormData, convertEmptyTo: ConvertEmptyToValue) => Record<string, any>;
|
|
4
|
+
export declare const serialize: <Schema extends z.ZodType<any>>(data: z.infer<Schema>) => any;
|
|
4
5
|
//# sourceMappingURL=decode_form.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"decode_form.d.ts","sourceRoot":"","sources":["../../src/server/decode_form.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"decode_form.d.ts","sourceRoot":"","sources":["../../src/server/decode_form.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAC7B,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAGtD,eAAO,MAAM,cAAc,aACf,QAAQ,kBACF,mBAAmB,KAClC,MAAM,CAAC,MAAM,EAAE,GAAG,CA8CpB,CAAC;AACF,eAAO,MAAM,SAAS,GAAI,MAAM,SAAS,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,QAC/C,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,QACc,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
// ** Decode form helper
|
|
2
|
-
export const decodeFormData = (formData) => {
|
|
2
|
+
export const decodeFormData = (formData, convertEmptyTo) => {
|
|
3
3
|
const data = {};
|
|
4
4
|
formData.forEach((value, key) => {
|
|
5
5
|
// Reflect.has in favor of: object.hasOwnProperty(key)
|
|
@@ -8,7 +8,14 @@ export const decodeFormData = (formData) => {
|
|
|
8
8
|
data[key] = value;
|
|
9
9
|
}
|
|
10
10
|
else {
|
|
11
|
-
data[key] =
|
|
11
|
+
data[key] =
|
|
12
|
+
convertEmptyTo === 'undefined'
|
|
13
|
+
? undefined
|
|
14
|
+
: convertEmptyTo === 'null'
|
|
15
|
+
? null
|
|
16
|
+
: convertEmptyTo === 'empty-string'
|
|
17
|
+
? ''
|
|
18
|
+
: value;
|
|
12
19
|
}
|
|
13
20
|
return;
|
|
14
21
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"decode_form.js","sourceRoot":"","sources":["../../src/server/decode_form.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"decode_form.js","sourceRoot":"","sources":["../../src/server/decode_form.ts"],"names":[],"mappings":"AAGA,wBAAwB;AACxB,MAAM,CAAC,MAAM,cAAc,GAAG,CAC5B,QAAkB,EAClB,cAAmC,EACd,EAAE;IACvB,MAAM,IAAI,GAAwB,EAAE,CAAC;IACrC,QAAQ,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;QAC9B,sDAAsD;QACtD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,EAAE,CAAC;YAC5B,IAAI,KAAK,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,CAAC;gBACrC,IAAI,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;YACpB,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,GAAG,CAAC;oBACP,cAAc,KAAK,WAAW;wBAC5B,CAAC,CAAC,SAAS;wBACX,CAAC,CAAC,cAAc,KAAK,MAAM;4BACzB,CAAC,CAAC,IAAI;4BACN,CAAC,CAAC,cAAc,KAAK,cAAc;gCACjC,CAAC,CAAC,EAAE;gCACJ,CAAC,CAAC,KAAK,CAAC;YAClB,CAAC;YACD,OAAO;QACT,CAAC;QACD,mEAAmE;QACnE,gCAAgC;QAChC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YAC9B,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;QAC1B,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACxB,CAAC,CAAC,CAAC;IAEH,6EAA6E;IAC7E,yCAAyC;IACzC,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QAChD,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YACtB,MAAM,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAC5B,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAY,CAAC;YACrC,IAAI,GAAG,GAAG,IAAI,CAAC;YACf,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;gBACrB,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;oBACZ,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC;gBACd,CAAC;gBACD,GAAG,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;YACf,CAAC;YACD,GAAG,CAAC,OAAO,CAAC,GAAG,KAAK,CAAC;YACrB,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC;QACnB,CAAC;IACH,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AACF,MAAM,CAAC,MAAM,SAAS,GAAG,CACvB,IAAqB,EACrB,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC"}
|
package/dist/server/helpers.d.ts
CHANGED
|
@@ -1,46 +1,44 @@
|
|
|
1
1
|
import type { z } from 'zod';
|
|
2
|
-
import type { ErrorActionResult, FieldErrors, InvalidActionResult } from './types.js';
|
|
3
|
-
export declare const success:
|
|
2
|
+
import type { ErrorActionResult, FieldErrors, InvalidActionResult, SuccessActionResult } from './types.js';
|
|
3
|
+
export declare const success: (data: any) => {
|
|
4
4
|
success: true;
|
|
5
|
-
|
|
6
|
-
successData: any;
|
|
7
|
-
invalid: undefined;
|
|
8
|
-
error: undefined;
|
|
5
|
+
data: any;
|
|
9
6
|
};
|
|
10
|
-
export declare const
|
|
7
|
+
export declare const invalid: <Schema extends z.ZodType<any>>(invalid: FieldErrors<Schema>) => {
|
|
11
8
|
success: false;
|
|
12
|
-
formData: z.TypeOf<Schema>;
|
|
13
|
-
successData: undefined;
|
|
14
9
|
invalid: FieldErrors<Schema>;
|
|
15
|
-
error: undefined;
|
|
16
10
|
};
|
|
17
|
-
export declare const error:
|
|
18
|
-
formData: z.TypeOf<Schema>;
|
|
19
|
-
successData: undefined;
|
|
11
|
+
export declare const error: (error: unknown) => {
|
|
20
12
|
success: false;
|
|
21
|
-
invalid: undefined;
|
|
22
13
|
error: string;
|
|
23
14
|
};
|
|
24
|
-
export declare function
|
|
25
|
-
|
|
26
|
-
|
|
15
|
+
export declare function _actionSuccess<Schema extends z.ZodType<any>>(formData: z.infer<Schema>, actionResult: SuccessActionResult): {
|
|
16
|
+
formData: z.core.output<Schema>;
|
|
17
|
+
invalid: undefined;
|
|
27
18
|
error: undefined;
|
|
28
|
-
|
|
29
|
-
|
|
19
|
+
success: true;
|
|
20
|
+
data: any;
|
|
21
|
+
};
|
|
22
|
+
export declare function _actionInvalid<Schema extends z.ZodType<any>>(formData: z.infer<Schema>, actionResult: InvalidActionResult<Schema>): {
|
|
23
|
+
formData: z.core.output<Schema>;
|
|
24
|
+
data: undefined;
|
|
25
|
+
error: undefined;
|
|
26
|
+
success: false;
|
|
27
|
+
invalid: FieldErrors<Schema> | undefined;
|
|
30
28
|
};
|
|
31
|
-
export declare function
|
|
29
|
+
export declare function _actionError<Schema extends z.ZodType<any>>(formData: z.infer<Schema>, actionResult: ErrorActionResult): {
|
|
30
|
+
formData: z.core.output<Schema>;
|
|
32
31
|
invalid: undefined;
|
|
32
|
+
data: undefined;
|
|
33
33
|
success: false;
|
|
34
34
|
error: string;
|
|
35
|
-
formData: z.TypeOf<Schema>;
|
|
36
|
-
successData: undefined;
|
|
37
35
|
};
|
|
38
|
-
export declare const
|
|
39
|
-
export declare const isErrorActionResult:
|
|
40
|
-
export declare const initialState: <Schema extends z.
|
|
36
|
+
export declare const isInvalidActionResult: <Schema extends z.ZodType<any>>(actionResult: unknown) => actionResult is InvalidActionResult<Schema>;
|
|
37
|
+
export declare const isErrorActionResult: (actionResult: unknown) => actionResult is ErrorActionResult;
|
|
38
|
+
export declare const initialState: <Schema extends z.ZodType<any>>(formData: z.infer<Schema> | undefined) => {
|
|
41
39
|
success: false;
|
|
42
|
-
formData: z.
|
|
43
|
-
|
|
40
|
+
formData: z.core.output<Schema> | undefined;
|
|
41
|
+
data: undefined;
|
|
44
42
|
invalid: undefined;
|
|
45
43
|
error: undefined;
|
|
46
44
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../src/server/helpers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAC7B,OAAO,KAAK,EACV,iBAAiB,
|
|
1
|
+
{"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../src/server/helpers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAC7B,OAAO,KAAK,EACV,iBAAiB,EAEjB,WAAW,EAEX,mBAAmB,EAEnB,mBAAmB,EAEpB,MAAM,YAAY,CAAC;AAIpB,eAAO,MAAM,OAAO,SAAU,GAAG;;;CAIC,CAAC;AAEnC,eAAO,MAAM,OAAO,GAAI,MAAM,SAAS,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,WAC1C,WAAW,CAAC,MAAM,CAAC;;;CAKY,CAAC;AAE3C,eAAO,MAAM,KAAK,UAAW,OAAO;;;CASJ,CAAC;AAGjC,wBAAgB,cAAc,CAAC,MAAM,SAAS,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,EAC1D,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,EACzB,YAAY,EAAE,mBAAmB;;;;;;EAQlC;AAED,wBAAgB,cAAc,CAAC,MAAM,SAAS,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,EAC1D,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,EACzB,YAAY,EAAE,mBAAmB,CAAC,MAAM,CAAC;;;;;;EAQ1C;AAED,wBAAgB,YAAY,CAAC,MAAM,SAAS,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,EACxD,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,EACzB,YAAY,EAAE,iBAAiB;;;;;;EAQhC;AAGD,eAAO,MAAM,qBAAqB,GAAI,MAAM,SAAS,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,gBACnD,OAAO,KACpB,YAAY,IAAI,mBAAmB,CAAC,MAAM,CAS5C,CAAC;AAEF,eAAO,MAAM,mBAAmB,iBAChB,OAAO,KACpB,YAAY,IAAI,iBASlB,CAAC;AAGF,eAAO,MAAM,YAAY,GAAI,MAAM,SAAS,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,YAC9C,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,SAAS;;;;;;CAQY,CAAC"}
|
package/dist/server/helpers.js
CHANGED
|
@@ -1,47 +1,48 @@
|
|
|
1
1
|
// ** Action result constructors helpers
|
|
2
|
-
|
|
2
|
+
// ** Public helpers
|
|
3
|
+
export const success = (data) => ({
|
|
3
4
|
success: true,
|
|
4
|
-
|
|
5
|
-
successData,
|
|
6
|
-
invalid: undefined,
|
|
7
|
-
error: undefined,
|
|
5
|
+
data,
|
|
8
6
|
});
|
|
9
|
-
export const
|
|
7
|
+
export const invalid = (invalid) => ({
|
|
10
8
|
success: false,
|
|
11
|
-
formData, // pass down the data even if there are errors to leave the form filled
|
|
12
|
-
successData: undefined,
|
|
13
9
|
invalid,
|
|
14
|
-
error: undefined,
|
|
15
10
|
});
|
|
16
|
-
export const error = (
|
|
17
|
-
formData, // pass down the data even if there are errors to leave the form filled
|
|
18
|
-
successData: undefined,
|
|
11
|
+
export const error = (error) => ({
|
|
19
12
|
success: false,
|
|
20
|
-
|
|
21
|
-
|
|
13
|
+
error: typeof error === 'string'
|
|
14
|
+
? error
|
|
15
|
+
: error instanceof Error
|
|
16
|
+
? error.message
|
|
17
|
+
: JSON.stringify(error),
|
|
22
18
|
});
|
|
23
|
-
|
|
19
|
+
// ** Private helpers
|
|
20
|
+
export function _actionSuccess(formData, actionResult) {
|
|
21
|
+
return {
|
|
22
|
+
...actionResult,
|
|
23
|
+
formData, // pass down the data to leave the form filled
|
|
24
|
+
invalid: undefined,
|
|
25
|
+
error: undefined,
|
|
26
|
+
};
|
|
27
|
+
}
|
|
28
|
+
export function _actionInvalid(formData, actionResult) {
|
|
24
29
|
return {
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
success: false,
|
|
30
|
+
...actionResult,
|
|
31
|
+
formData, // pass down the data to leave the form filled
|
|
32
|
+
data: undefined,
|
|
29
33
|
error: undefined,
|
|
30
|
-
formData, // pass down the data even if there are errors to leave the form filled
|
|
31
|
-
successData: undefined,
|
|
32
34
|
};
|
|
33
35
|
}
|
|
34
|
-
export function
|
|
36
|
+
export function _actionError(formData, actionResult) {
|
|
35
37
|
return {
|
|
38
|
+
...actionResult,
|
|
39
|
+
formData, // pass down the data to leave the form filled
|
|
36
40
|
invalid: undefined,
|
|
37
|
-
|
|
38
|
-
error: error,
|
|
39
|
-
formData, // pass down the data even if there are errors to leave the form filled
|
|
40
|
-
successData: undefined,
|
|
41
|
+
data: undefined,
|
|
41
42
|
};
|
|
42
43
|
}
|
|
43
44
|
// ** Action result typeguards
|
|
44
|
-
export const
|
|
45
|
+
export const isInvalidActionResult = (actionResult) => {
|
|
45
46
|
return (typeof actionResult === 'object' &&
|
|
46
47
|
actionResult !== null &&
|
|
47
48
|
'success' in actionResult &&
|
|
@@ -61,7 +62,7 @@ export const isErrorActionResult = (actionResult) => {
|
|
|
61
62
|
export const initialState = (formData) => ({
|
|
62
63
|
success: false,
|
|
63
64
|
formData,
|
|
64
|
-
|
|
65
|
+
data: undefined,
|
|
65
66
|
invalid: undefined,
|
|
66
67
|
error: undefined,
|
|
67
68
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/server/helpers.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/server/helpers.ts"],"names":[],"mappings":"AAYA,wCAAwC;AACxC,oBAAoB;AACpB,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,IAAS,EAAE,EAAE,CACnC,CAAC;IACC,OAAO,EAAE,IAAI;IACb,IAAI;CACL,CAA+B,CAAC;AAEnC,MAAM,CAAC,MAAM,OAAO,GAAG,CACrB,OAA4B,EAC5B,EAAE,CACF,CAAC;IACC,OAAO,EAAE,KAAK;IACd,OAAO;CACR,CAAuC,CAAC;AAE3C,MAAM,CAAC,MAAM,KAAK,GAAG,CAAC,KAAc,EAAE,EAAE,CACtC,CAAC;IACC,OAAO,EAAE,KAAK;IACd,KAAK,EACH,OAAO,KAAK,KAAK,QAAQ;QACvB,CAAC,CAAC,KAAK;QACP,CAAC,CAAC,KAAK,YAAY,KAAK;YACtB,CAAC,CAAC,KAAK,CAAC,OAAO;YACf,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC;CAC9B,CAA6B,CAAC;AAEjC,qBAAqB;AACrB,MAAM,UAAU,cAAc,CAC5B,QAAyB,EACzB,YAAiC;IAEjC,OAAO;QACL,GAAG,YAAY;QACf,QAAQ,EAAE,8CAA8C;QACxD,OAAO,EAAE,SAAS;QAClB,KAAK,EAAE,SAAS;KACiC,CAAC;AACtD,CAAC;AAED,MAAM,UAAU,cAAc,CAC5B,QAAyB,EACzB,YAAyC;IAEzC,OAAO;QACL,GAAG,YAAY;QACf,QAAQ,EAAE,8CAA8C;QACxD,IAAI,EAAE,SAAS;QACf,KAAK,EAAE,SAAS;KACiC,CAAC;AACtD,CAAC;AAED,MAAM,UAAU,YAAY,CAC1B,QAAyB,EACzB,YAA+B;IAE/B,OAAO;QACL,GAAG,YAAY;QACf,QAAQ,EAAE,8CAA8C;QACxD,OAAO,EAAE,SAAS;QAClB,IAAI,EAAE,SAAS;KACgC,CAAC;AACpD,CAAC;AAED,8BAA8B;AAC9B,MAAM,CAAC,MAAM,qBAAqB,GAAG,CACnC,YAAqB,EACwB,EAAE;IAC/C,OAAO,CACL,OAAO,YAAY,KAAK,QAAQ;QAChC,YAAY,KAAK,IAAI;QACrB,SAAS,IAAI,YAAY;QACzB,YAAY,CAAC,OAAO,KAAK,KAAK;QAC9B,SAAS,IAAI,YAAY;QACzB,YAAY,CAAC,OAAO,KAAK,SAAS,CACnC,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,mBAAmB,GAAG,CACjC,YAAqB,EACc,EAAE;IACrC,OAAO,CACL,OAAO,YAAY,KAAK,QAAQ;QAChC,YAAY,KAAK,IAAI;QACrB,SAAS,IAAI,YAAY;QACzB,YAAY,CAAC,OAAO,KAAK,KAAK;QAC9B,OAAO,IAAI,YAAY;QACvB,YAAY,CAAC,KAAK,KAAK,SAAS,CACjC,CAAC;AACJ,CAAC,CAAC;AAEF,0BAA0B;AAC1B,MAAM,CAAC,MAAM,YAAY,GAAG,CAC1B,QAAqC,EACrC,EAAE,CACF,CAAC;IACC,OAAO,EAAE,KAAK;IACd,QAAQ;IACR,IAAI,EAAE,SAAS;IACf,OAAO,EAAE,SAAS;IAClB,KAAK,EAAE,SAAS;CACjB,CAAgD,CAAC"}
|
package/dist/server/types.d.ts
CHANGED
|
@@ -1,34 +1,41 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
|
-
export type IdleActionResult
|
|
3
|
-
|
|
2
|
+
export type IdleActionResult = Pick<ActionResultWithFormData<z.ZodType<any>>, 'success' | 'data' | 'invalid' | 'error'>;
|
|
3
|
+
export type SuccessActionResult = Pick<SuccessActionResultWithFormData<z.ZodType<any>>, 'success' | 'data'>;
|
|
4
|
+
export type InvalidActionResult<Schema extends z.ZodType<any>> = Pick<InvalidActionResultWithFormData<Schema>, 'success' | 'invalid'>;
|
|
5
|
+
export type ErrorActionResult = Pick<ErrorActionResultWithFormData<z.ZodType<any>>, 'success' | 'error'>;
|
|
6
|
+
export type ActionResult<Schema extends z.ZodType<any>> = IdleActionResult | SuccessActionResult | InvalidActionResult<Schema> | ErrorActionResult;
|
|
7
|
+
export type IdleActionResultWithFormData<Schema extends z.ZodType<any>> = {
|
|
4
8
|
formData: z.infer<Schema> | undefined;
|
|
5
|
-
|
|
9
|
+
success: false;
|
|
10
|
+
data: undefined;
|
|
6
11
|
invalid: undefined;
|
|
7
12
|
error: undefined;
|
|
8
13
|
};
|
|
9
|
-
export type
|
|
10
|
-
success: true;
|
|
14
|
+
export type SuccessActionResultWithFormData<Schema extends z.ZodType<any>> = {
|
|
11
15
|
formData: z.infer<Schema> | undefined;
|
|
12
|
-
|
|
16
|
+
success: true;
|
|
17
|
+
data: any;
|
|
13
18
|
invalid: undefined;
|
|
14
19
|
error: undefined;
|
|
15
20
|
};
|
|
16
|
-
export type
|
|
17
|
-
success: false;
|
|
21
|
+
export type InvalidActionResultWithFormData<Schema extends z.ZodType<any>> = {
|
|
18
22
|
formData: z.infer<Schema> | undefined;
|
|
19
|
-
|
|
23
|
+
success: false;
|
|
24
|
+
data: undefined;
|
|
20
25
|
invalid: FieldErrors<Schema> | undefined;
|
|
21
26
|
error: undefined;
|
|
22
27
|
};
|
|
23
|
-
export type
|
|
24
|
-
success: false;
|
|
28
|
+
export type ErrorActionResultWithFormData<Schema extends z.ZodType<any>> = {
|
|
25
29
|
formData: z.infer<Schema> | undefined;
|
|
26
|
-
|
|
30
|
+
success: false;
|
|
31
|
+
data: undefined;
|
|
27
32
|
invalid: undefined;
|
|
28
33
|
error: string;
|
|
29
34
|
};
|
|
30
|
-
export type
|
|
31
|
-
export type FieldErrors<Schema extends z.
|
|
35
|
+
export type ActionResultWithFormData<Schema extends z.ZodType<any>> = IdleActionResultWithFormData<Schema> | SuccessActionResultWithFormData<Schema> | InvalidActionResultWithFormData<Schema> | ErrorActionResultWithFormData<Schema>;
|
|
36
|
+
export type FieldErrors<Schema extends z.ZodType<any>> = {
|
|
32
37
|
[key in keyof Partial<z.TypeOf<Schema>>]: string[] | undefined;
|
|
33
38
|
};
|
|
39
|
+
/** Utils */
|
|
40
|
+
export type ConvertEmptyToValue = 'undefined' | 'null' | 'empty-string';
|
|
34
41
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/server/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,MAAM,gBAAgB,CAAC,MAAM,SAAS,CAAC,CAAC,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/server/types.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "react-server-actions",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.15",
|
|
4
4
|
"description": "A package for working with actions in React and Next.js",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"next",
|
|
@@ -24,6 +24,14 @@
|
|
|
24
24
|
"files": [
|
|
25
25
|
"dist"
|
|
26
26
|
],
|
|
27
|
+
"scripts": {
|
|
28
|
+
"build": "tsc",
|
|
29
|
+
"check-exports": "attw --pack . --ignore-rules=cjs-resolves-to-esm",
|
|
30
|
+
"check-format": "prettier --check .",
|
|
31
|
+
"ci": "npm run build && npm run check-format && npm run check-exports",
|
|
32
|
+
"format": "prettier --write .",
|
|
33
|
+
"prepublishOnly": "npm run ci"
|
|
34
|
+
},
|
|
27
35
|
"devDependencies": {
|
|
28
36
|
"@arethetypeswrong/cli": "^0.17.4",
|
|
29
37
|
"prettier": "^3.3.3",
|
|
@@ -33,13 +41,6 @@
|
|
|
33
41
|
"peerDependencies": {
|
|
34
42
|
"@types/react": ">=18.0.0",
|
|
35
43
|
"react": ">=18.0.0",
|
|
36
|
-
"zod": ">=
|
|
37
|
-
},
|
|
38
|
-
"scripts": {
|
|
39
|
-
"build": "tsc",
|
|
40
|
-
"check-exports": "attw --pack . --ignore-rules=cjs-resolves-to-esm",
|
|
41
|
-
"check-format": "prettier --check .",
|
|
42
|
-
"ci": "npm run build && npm run check-format && npm run check-exports",
|
|
43
|
-
"format": "prettier --write ."
|
|
44
|
+
"zod": ">=4.1.11"
|
|
44
45
|
}
|
|
45
|
-
}
|
|
46
|
+
}
|