react-server-actions 1.0.14 → 1.0.16
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 +2 -2
- package/dist/client/helpers.d.ts.map +1 -1
- package/dist/client/helpers.js +76 -58
- package/dist/client/helpers.js.map +1 -1
- package/dist/client/index.d.ts +5 -5
- package/dist/client/index.d.ts.map +1 -1
- package/dist/client/index.js +4 -1
- package/dist/client/index.js.map +1 -1
- package/dist/index.d.ts +2 -2
- 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,10 +9,10 @@ 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
|
-
type: 'string' | 'number' | 'date' | 'boolean' | 'enum';
|
|
15
|
+
type: 'string' | 'number' | 'date' | 'boolean' | 'enum' | 'file';
|
|
16
16
|
attrs: Record<string, string | number | boolean>;
|
|
17
17
|
};
|
|
18
18
|
/**
|
|
@@ -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,GAAG,MAAM,CAAC;IACjE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,CAAC;CAClD,CAuIA;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,115 +10,133 @@ 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
|
}
|
|
136
|
+
else if (actualSchema instanceof z.ZodFile) {
|
|
137
|
+
type = 'file';
|
|
138
|
+
attrs.type = 'file';
|
|
139
|
+
}
|
|
122
140
|
// If not specified, remove the type attribute
|
|
123
141
|
if (!options?.inferTypeAttr) {
|
|
124
142
|
delete attrs.type;
|
|
@@ -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,7 +1,7 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { z } from 'zod';
|
|
3
3
|
import type { ActionResult } from '../index.js';
|
|
4
|
-
export declare const useForm: <Schema extends z.
|
|
4
|
+
export declare const useForm: <Schema extends z.ZodObject>() => {
|
|
5
5
|
state: undefined;
|
|
6
6
|
schema: undefined;
|
|
7
7
|
debug: boolean;
|
|
@@ -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
29
|
state: ActionResult<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,YAAY,EAAE,MAAM,aAAa,CAAC;AAYhD,eAAO,MAAM,OAAO,GAAI,MAAM,SAAS,CAAC,CAAC,
|
|
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,YAAY,EAAE,MAAM,aAAa,CAAC;AAYhD,eAAO,MAAM,OAAO,GAAI,MAAM,SAAS,CAAC,CAAC,SAAS;;;;;WAKtB,YAAY,CAAC,MAAM,CAAC;YAClB,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,cAoDvD,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,YAAY,CAAC,MAAM,CAAC,CAAC;IAC5B,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
|
@@ -55,6 +55,9 @@ export const useField = () => {
|
|
|
55
55
|
field.input.defaultChecked = false;
|
|
56
56
|
}
|
|
57
57
|
}
|
|
58
|
+
else if (type === 'file') {
|
|
59
|
+
// File inputs don't support default values, skip setting it
|
|
60
|
+
}
|
|
58
61
|
else {
|
|
59
62
|
field.input.defaultValue = defaultValue;
|
|
60
63
|
}
|
|
@@ -76,7 +79,7 @@ export function Form({ children, action, state, schema, className, reset, onSucc
|
|
|
76
79
|
}
|
|
77
80
|
useEffect(() => {
|
|
78
81
|
if (state.success) {
|
|
79
|
-
onSuccess?.(state.
|
|
82
|
+
onSuccess?.(state.data, state.formData);
|
|
80
83
|
}
|
|
81
84
|
else if (state.error) {
|
|
82
85
|
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 {
|
|
4
|
+
import { error, initialState, invalid, success } from './server/helpers.js';
|
|
5
5
|
import { type ActionResult, type ErrorActionResult, type FieldErrors, type IdleActionResult, type InvalidActionResult, type SuccessActionResult } from './server/types.js';
|
|
6
|
-
export { ActionClient, Form, FormField,
|
|
6
|
+
export { ActionClient, Form, FormField, dateToInputDefaultValue, datetimeToInputDefaultValue, error, initialState, invalid, success, useField, useForm, };
|
|
7
7
|
export type { ActionResult, ErrorActionResult, FieldErrors, IdleActionResult, InvalidActionResult, SuccessActionResult, };
|
|
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,YAAY,EACjB,KAAK,iBAAiB,EACtB,KAAK,WAAW,EAChB,KAAK,gBAAgB,EACrB,KAAK,mBAAmB,EACxB,KAAK,mBAAmB,EACzB,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,YAAY,EACZ,iBAAiB,EACjB,WAAW,EACX,gBAAgB,EAChB,mBAAmB,EACnB,mBAAmB,GACpB,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
|
|
2
|
+
import { type ActionResult, type ConvertEmptyToValue, type ErrorActionResultWithoutFormData, type InvalidActionResultWithoutFormData, type SuccessActionResultWithoutFormData } 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<SuccessActionResultWithoutFormData | InvalidActionResultWithoutFormData<Schema> | ErrorActionResultWithoutFormData>, options?: {
|
|
14
|
+
handleExceptionsAsFormErrors?: boolean;
|
|
15
|
+
}) => (_prevState: unknown, data: FormData) => Promise<ActionResult<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<SuccessActionResultWithoutFormData | InvalidActionResultWithoutFormData<Schema> | ErrorActionResultWithoutFormData>, options?: {
|
|
21
|
+
handleExceptionsAsFormErrors?: boolean;
|
|
22
|
+
}) => (param: string, _prevState: unknown, data: FormData) => Promise<ActionResult<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,YAAY,EACjB,KAAK,mBAAmB,EACxB,KAAK,gCAAgC,EAErC,KAAK,kCAAkC,EACvC,KAAK,kCAAkC,EACxC,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,CACT,kCAAkC,GAClC,kCAAkC,CAAC,MAAM,CAAC,GAC1C,gCAAgC,CACnC,YACS;QACR,4BAA4B,CAAC,EAAE,OAAO,CAAC;KACxC,kBAGa,OAAO,QACb,QAAQ,KACb,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAqDhC;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,CACT,kCAAkC,GAClC,kCAAkC,CAAC,MAAM,CAAC,GAC1C,gCAAgC,CACnC,YACS;QACR,4BAA4B,CAAC,EAAE,OAAO,CAAC;KACxC,aAGQ,MAAM,cACD,OAAO,QACb,QAAQ,KACb,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAoDhC;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 {
|
|
3
|
-
export declare const success:
|
|
2
|
+
import type { ErrorActionResultWithoutFormData, FieldErrors, InvalidActionResultWithoutFormData, SuccessActionResultWithoutFormData } 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: SuccessActionResultWithoutFormData): {
|
|
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: InvalidActionResultWithoutFormData<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: ErrorActionResultWithoutFormData): {
|
|
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 InvalidActionResultWithoutFormData<Schema>;
|
|
37
|
+
export declare const isErrorActionResult: (actionResult: unknown) => actionResult is ErrorActionResultWithoutFormData;
|
|
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,
|
|
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,EAEV,gCAAgC,EAChC,WAAW,EAGX,kCAAkC,EAElC,kCAAkC,EACnC,MAAM,YAAY,CAAC;AAIpB,eAAO,MAAM,OAAO,SAAU,GAAG;;;CAIgB,CAAC;AAElD,eAAO,MAAM,OAAO,GAAI,MAAM,SAAS,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,WAC1C,WAAW,CAAC,MAAM,CAAC;;;CAK2B,CAAC;AAE1D,eAAO,MAAM,KAAK,UAAW,OAAO;;;CASW,CAAC;AAGhD,wBAAgB,cAAc,CAAC,MAAM,SAAS,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,EAC1D,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,EACzB,YAAY,EAAE,kCAAkC;;;;;;EAQjD;AAED,wBAAgB,cAAc,CAAC,MAAM,SAAS,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,EAC1D,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,EACzB,YAAY,EAAE,kCAAkC,CAAC,MAAM,CAAC;;;;;;EAQzD;AAED,wBAAgB,YAAY,CAAC,MAAM,SAAS,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,EACxD,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,EACzB,YAAY,EAAE,gCAAgC;;;;;;EAQ/C;AAGD,eAAO,MAAM,qBAAqB,GAAI,MAAM,SAAS,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,gBACnD,OAAO,KACpB,YAAY,IAAI,kCAAkC,CAAC,MAAM,CAS3D,CAAC;AAEF,eAAO,MAAM,mBAAmB,iBAChB,OAAO,KACpB,YAAY,IAAI,gCASlB,CAAC;AAGF,eAAO,MAAM,YAAY,GAAI,MAAM,SAAS,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,YAC9C,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,SAAS;;;;;;CAQA,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,CAA8C,CAAC;AAElD,MAAM,CAAC,MAAM,OAAO,GAAG,CACrB,OAA4B,EAC5B,EAAE,CACF,CAAC;IACC,OAAO,EAAE,KAAK;IACd,OAAO;CACR,CAAsD,CAAC;AAE1D,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,CAA4C,CAAC;AAEhD,qBAAqB;AACrB,MAAM,UAAU,cAAc,CAC5B,QAAyB,EACzB,YAAgD;IAEhD,OAAO;QACL,GAAG,YAAY;QACf,QAAQ,EAAE,8CAA8C;QACxD,OAAO,EAAE,SAAS;QAClB,KAAK,EAAE,SAAS;KACqB,CAAC;AAC1C,CAAC;AAED,MAAM,UAAU,cAAc,CAC5B,QAAyB,EACzB,YAAwD;IAExD,OAAO;QACL,GAAG,YAAY;QACf,QAAQ,EAAE,8CAA8C;QACxD,IAAI,EAAE,SAAS;QACf,KAAK,EAAE,SAAS;KACqB,CAAC;AAC1C,CAAC;AAED,MAAM,UAAU,YAAY,CAC1B,QAAyB,EACzB,YAA8C;IAE9C,OAAO;QACL,GAAG,YAAY;QACf,QAAQ,EAAE,8CAA8C;QACxD,OAAO,EAAE,SAAS;QAClB,IAAI,EAAE,SAAS;KACoB,CAAC;AACxC,CAAC;AAED,8BAA8B;AAC9B,MAAM,CAAC,MAAM,qBAAqB,GAAG,CACnC,YAAqB,EACuC,EAAE;IAC9D,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,EAC6B,EAAE;IACpD,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,CAAoC,CAAC"}
|
package/dist/server/types.d.ts
CHANGED
|
@@ -1,34 +1,41 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
|
-
export type
|
|
3
|
-
|
|
2
|
+
export type IdleActionResultWithoutFormData = Pick<ActionResult<z.ZodType<any>>, 'success' | 'data' | 'invalid' | 'error'>;
|
|
3
|
+
export type SuccessActionResultWithoutFormData = Pick<SuccessActionResult<z.ZodType<any>>, 'success' | 'data'>;
|
|
4
|
+
export type InvalidActionResultWithoutFormData<Schema extends z.ZodType<any>> = Pick<InvalidActionResult<Schema>, 'success' | 'invalid'>;
|
|
5
|
+
export type ErrorActionResultWithoutFormData = Pick<ErrorActionResult<z.ZodType<any>>, 'success' | 'error'>;
|
|
6
|
+
export type ActionResultWithoutFormData<Schema extends z.ZodType<any>> = IdleActionResultWithoutFormData | SuccessActionResultWithoutFormData | InvalidActionResultWithoutFormData<Schema> | ErrorActionResultWithoutFormData;
|
|
7
|
+
export type IdleActionResult<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 SuccessActionResult<Schema extends z.
|
|
10
|
-
success: true;
|
|
14
|
+
export type SuccessActionResult<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 InvalidActionResult<Schema extends z.
|
|
17
|
-
success: false;
|
|
21
|
+
export type InvalidActionResult<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 ErrorActionResult<Schema extends z.
|
|
24
|
-
success: false;
|
|
28
|
+
export type ErrorActionResult<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 ActionResult<Schema extends z.
|
|
31
|
-
export type FieldErrors<Schema extends z.
|
|
35
|
+
export type ActionResult<Schema extends z.ZodType<any>> = IdleActionResult<Schema> | SuccessActionResult<Schema> | InvalidActionResult<Schema> | ErrorActionResult<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,
|
|
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.16",
|
|
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
|
+
}
|