eddev 0.1.44-beta-1 → 0.1.44-beta-2
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.
|
@@ -1,11 +1,16 @@
|
|
|
1
|
-
declare type GravityFormsField = {
|
|
1
|
+
export declare type GravityFormsField = {
|
|
2
2
|
type: string;
|
|
3
3
|
id: number;
|
|
4
4
|
label: string;
|
|
5
|
+
isRequired: boolean;
|
|
5
6
|
} & {
|
|
6
7
|
[key: string]: any;
|
|
7
8
|
};
|
|
8
9
|
export declare type GravityFormData = {
|
|
10
|
+
id: number;
|
|
9
11
|
fields: GravityFormsField[];
|
|
12
|
+
title: string;
|
|
13
|
+
button: {
|
|
14
|
+
text: string;
|
|
15
|
+
};
|
|
10
16
|
};
|
|
11
|
-
export {};
|
package/gravityforms/index.d.ts
CHANGED
package/gravityforms/index.js
CHANGED
|
@@ -1,16 +1,15 @@
|
|
|
1
|
+
import { GravityFormsField } from ".";
|
|
1
2
|
import { GravityFormData } from "./gravity-forms";
|
|
2
3
|
declare type Options = {
|
|
3
4
|
form: GravityFormData;
|
|
4
5
|
};
|
|
6
|
+
export declare type GravityFormsFieldState<T = any> = GravityFormsField & {
|
|
7
|
+
value: T | undefined;
|
|
8
|
+
error: string | undefined;
|
|
9
|
+
set(value: T | undefined): void;
|
|
10
|
+
};
|
|
5
11
|
export declare function useGravityForm(opts: Options): {
|
|
6
|
-
fields:
|
|
7
|
-
value: any;
|
|
8
|
-
error: string | undefined;
|
|
9
|
-
set: (value: any) => void;
|
|
10
|
-
type: string;
|
|
11
|
-
id: number;
|
|
12
|
-
label: string;
|
|
13
|
-
}[];
|
|
12
|
+
fields: GravityFormsFieldState<any>[];
|
|
14
13
|
submit(): void;
|
|
15
14
|
updateField(id: number, value: any): void;
|
|
16
15
|
submitting: boolean;
|
|
@@ -52,20 +52,20 @@ var react_1 = require("react");
|
|
|
52
52
|
var react_2 = require("react");
|
|
53
53
|
var react_3 = require("react");
|
|
54
54
|
var reducer = function (state, action) {
|
|
55
|
-
var _a, _b;
|
|
55
|
+
var _a, _b, _c;
|
|
56
56
|
switch (action.type) {
|
|
57
57
|
case "field":
|
|
58
|
-
return __assign(__assign({}, state), {
|
|
58
|
+
return __assign(__assign({}, state), { errors: __assign(__assign({}, state.errors), (_a = {}, _a[action.id] = undefined, _a)), values: __assign(__assign({}, state.values), (_b = {}, _b[action.id] = action.value, _b)) });
|
|
59
59
|
case "submitting":
|
|
60
60
|
return __assign(__assign({}, state), { errors: {}, validity: {}, hasErrors: false, submitting: true });
|
|
61
61
|
case "success":
|
|
62
62
|
return __assign(__assign({}, state), { submitting: false, complete: true, errors: {}, validity: {}, hasErrors: false, successMessage: action.message });
|
|
63
63
|
case "mainError":
|
|
64
|
-
return __assign(__assign({}, state), { hasErrors: true, mainError: action.message });
|
|
64
|
+
return __assign(__assign({}, state), { submitting: false, hasErrors: true, mainError: action.message });
|
|
65
65
|
case "errors":
|
|
66
|
-
return __assign(__assign({}, state), { hasErrors: true, errors: action.errors });
|
|
66
|
+
return __assign(__assign({}, state), { submitting: false, hasErrors: true, errors: action.errors });
|
|
67
67
|
case "clearError":
|
|
68
|
-
return __assign(__assign({}, state), { errors: __assign(__assign({}, state.errors), (
|
|
68
|
+
return __assign(__assign({}, state), { submitting: false, errors: __assign(__assign({}, state.errors), (_c = {}, _c[action.id] = undefined, _c)) });
|
|
69
69
|
default:
|
|
70
70
|
throw new Error("Unknown GravityForms action ".concat(JSON.stringify(action)));
|
|
71
71
|
}
|
|
@@ -96,6 +96,7 @@ function useGravityForm(opts) {
|
|
|
96
96
|
submit: function (state) {
|
|
97
97
|
dispatch({ type: "submitting" });
|
|
98
98
|
submit(form, state).then(function (result) {
|
|
99
|
+
console.log("RESULT", result);
|
|
99
100
|
if (cancelled)
|
|
100
101
|
return;
|
|
101
102
|
if (result.success) {
|
|
@@ -113,7 +114,7 @@ function useGravityForm(opts) {
|
|
|
113
114
|
return function () {
|
|
114
115
|
cancelled = true;
|
|
115
116
|
};
|
|
116
|
-
});
|
|
117
|
+
}, []);
|
|
117
118
|
return __assign(__assign({}, state), { fields: fields, submit: function () {
|
|
118
119
|
submitter === null || submitter === void 0 ? void 0 : submitter.submit(state);
|
|
119
120
|
}, updateField: function (id, value) {
|
|
@@ -121,6 +122,14 @@ function useGravityForm(opts) {
|
|
|
121
122
|
} });
|
|
122
123
|
}
|
|
123
124
|
exports.useGravityForm = useGravityForm;
|
|
125
|
+
function prepareValuesPayload(form, state, data) {
|
|
126
|
+
for (var _i = 0, _a = form.fields; _i < _a.length; _i++) {
|
|
127
|
+
var field = _a[_i];
|
|
128
|
+
var value = state.values[field.id];
|
|
129
|
+
data["input_" + field.id] = value;
|
|
130
|
+
}
|
|
131
|
+
return data;
|
|
132
|
+
}
|
|
124
133
|
function submit(form, state) {
|
|
125
134
|
return __awaiter(this, void 0, void 0, function () {
|
|
126
135
|
var url, params, result, payload, err_1;
|
|
@@ -128,8 +137,12 @@ function submit(form, state) {
|
|
|
128
137
|
switch (_a.label) {
|
|
129
138
|
case 0:
|
|
130
139
|
_a.trys.push([0, 3, , 4]);
|
|
140
|
+
console.log("Submitting", { form: form, state: state });
|
|
131
141
|
url = "/wp-json/ed/v1/gf/submit";
|
|
132
|
-
params = {
|
|
142
|
+
params = {
|
|
143
|
+
formID: form.id,
|
|
144
|
+
values: prepareValuesPayload(form, state, {}),
|
|
145
|
+
};
|
|
133
146
|
return [4 /*yield*/, fetch(url, {
|
|
134
147
|
method: "POST",
|
|
135
148
|
headers: {
|
|
@@ -143,7 +156,17 @@ function submit(form, state) {
|
|
|
143
156
|
return [4 /*yield*/, result.json()];
|
|
144
157
|
case 2:
|
|
145
158
|
payload = _a.sent();
|
|
146
|
-
|
|
159
|
+
if (!payload.is_valid) {
|
|
160
|
+
return [2 /*return*/, __assign(__assign({}, payload), { success: false, errors: payload.validation_messages })];
|
|
161
|
+
}
|
|
162
|
+
else if (payload.is_valid) {
|
|
163
|
+
return [2 /*return*/, __assign(__assign({}, payload), { success: true, successMessage: payload.confirmation_message })];
|
|
164
|
+
}
|
|
165
|
+
else {
|
|
166
|
+
console.error("Not sure what to do with GF response", payload);
|
|
167
|
+
return [2 /*return*/, __assign({}, payload)];
|
|
168
|
+
}
|
|
169
|
+
return [3 /*break*/, 4];
|
|
147
170
|
case 3:
|
|
148
171
|
err_1 = _a.sent();
|
|
149
172
|
console.error(err_1);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "eddev",
|
|
3
|
-
"version": "0.1.44-beta-
|
|
3
|
+
"version": "0.1.44-beta-2",
|
|
4
4
|
"main": "./index.js",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"bin": {
|
|
@@ -87,7 +87,7 @@
|
|
|
87
87
|
"zustand": "^3.5.10"
|
|
88
88
|
},
|
|
89
89
|
"peerDependencies": {
|
|
90
|
-
"react": "^
|
|
91
|
-
"react-dom": "^
|
|
90
|
+
"react": "^18.0.0-rc.0",
|
|
91
|
+
"react-dom": "^18.0.0-rc.0"
|
|
92
92
|
}
|
|
93
93
|
}
|